Colin Snover
798c6bf34d
COMMON: Add yet another GUIO option flag
...
SCI engine has very many game options.
2017-07-06 19:12:36 -05:00
Colin Snover
7ce2e4cf08
GRAPHICS: Allow nearest neighbor scaling of 1Bpp and 2Bpp TransparentSurfaces
...
This is one small step toward allowing more shared usage of
existing scaling code.
2017-07-06 19:12:36 -05:00
Colin Snover
1fbee2f51e
SCI32: Allow skipping SEQ animations
...
In SSCI, SEQ animations cannot be skipped.
2017-07-06 19:12:36 -05:00
Colin Snover
9f910535c9
SCI32: Centralise OSystem screen updates
2017-07-06 19:12:35 -05:00
Colin Snover
f40ea8c2e7
SCI32: Stop setting unused palette timestamp property
2017-07-06 19:12:35 -05:00
Colin Snover
a689fee663
SCI32: Speed up & deduplicate palette submission code
2017-07-06 19:12:35 -05:00
Colin Snover
332fabcb8a
SDL: Only recreate SDL2 window when necessary
...
Destroying and recreating the SDL window whenever the video mode
changes in SDL2 is not necessary and causes several problems:
1. In windowed mode, the game window shifts position;
2. In fullscreen mode in macOS, every time the window is
recreated, it causes the OS to play its switch-to-fullscreen
animation again and emit system alert noises;
3. The window content flickers; and
4. The engine loses events from the old destroyed window.
This patch changes the SDL backend code to avoid destroying and
recreating the SDL window when using SDL2, except when switching
OpenGL modes, since there is no way to change the OpenGL feature
of a window.
There are still some outstanding issues with OpenGL where window
size ends up getting reset even though the user has resized it;
this will probably need to be addressed at some point in another
patch.
Thanks to @bgK and @criezy for their feedback which made this
patch much better.
Co-Authored-By: Bastien Bouclet <bastien.bouclet@gmail.com>
2017-07-06 19:11:54 -05:00
Paul Gilbert
6d37e1e88c
TITANIC: Fix Arboretum Winter view enter animation
2017-07-06 18:24:23 -04:00
Paul Gilbert
11bb59a08f
TITANIC: Fix NPC conversation crash
2017-07-06 16:33:45 -04:00
Paul Gilbert
e04815f932
TITANIC: Mark a few more sound playbacks as speech
2017-07-06 15:31:07 -04:00
Paul Gilbert
5e3ad4b236
TITANIC: Fix ship announcements with no content
2017-07-06 11:34:20 -04:00
Paul Gilbert
6044ba16ce
TITANIC: Added sound command to debugger
2017-07-06 11:07:55 -04:00
Paul Gilbert
0b18b0b1b5
TITANIC: Fix crash clicking on MissiveOMat login prompt
2017-07-06 08:48:54 -04:00
Paul Gilbert
1972fd0537
TITANIC: Don't show Access Denied on MissiveOMat after successful login
2017-07-06 08:25:14 -04:00
Paul Gilbert
6a16dfa670
TITANIC: Fix Rooms Glyphs list only allowing a single custom entry
2017-07-05 21:19:12 -04:00
Paul Gilbert
6d0207c7d6
TITANIC: Fix refreshing inventory tooltip when chicken gets cold
2017-07-05 19:58:11 -04:00
Paul Gilbert
7ed7e022f1
TITANIC: Fix parrot to only eat hot plain chickens
2017-07-05 18:23:23 -04:00
Bastien Bouclet
6f46b174df
MOHAWK: Myst: Poll for events every 10ms when waiting
2017-07-05 20:35:26 +02:00
Bastien Bouclet
31d428fd02
MOHAWK: Use movie slots instead of movie ids for stored opcodes
...
Fixes Trac#9873.
2017-07-05 19:13:32 +02:00
Paul Gilbert
afe27c6de8
TITANIC: Don't allow GMM save/loading during cutscenes
2017-07-05 08:22:05 -04:00
Tobia Tesan
348edec176
DIRECTOR: Make 3-ary processEvent private
2017-07-05 08:35:33 +02:00
Tobia Tesan
2ae7d9f86b
DIRECTOR: Handle kEventPrepareMovie with 1-ary processEvent
2017-07-05 08:35:33 +02:00
Tobia Tesan
9ddb97b4ed
DIRECTOR: Handle kEventExitFrame with 1-ary processEvent
2017-07-05 08:35:33 +02:00
Tobia Tesan
7b675fc1de
DIRECTOR: Handle kEventNone with 1-ary processEvent
2017-07-05 08:35:33 +02:00
Tobia Tesan
8a6dce9fd3
DIRECTOR: Handle kEventIdle with 1-ary processEvent
2017-07-05 08:35:33 +02:00
Tobia Tesan
1d5c92783e
DIRECTOR: Add processSpriteEvent
2017-07-05 08:35:33 +02:00
Tobia Tesan
fd310f1fd3
DIRECTOR: Move executeImmediateScripts to lingo.cpp
2017-07-05 08:35:33 +02:00
Tobia Tesan
f1d2149db6
DIRECTOR: Include director/frame.h and sprite.h in lingo.cpp
2017-07-05 08:35:33 +02:00
Tobia Tesan
9735fb06ca
DIRECTOR: Move #define CHANNEL_COUNT to director.h
2017-07-05 08:35:33 +02:00
Tobia Tesan
265b0882f6
DIRECTOR: Use 1-ary processEvent call to start movie
...
Perahsp a specialized Lingo::start() would be better for clarity for
this single one?
2017-07-05 08:35:33 +02:00
Tobia Tesan
8a6ef727cf
DIRECTOR: Add kEventStart case for processGenericEvent
2017-07-05 08:35:33 +02:00
Tobia Tesan
5a4942b6c5
DIRECTOR: Remove "primary event handler" comment
...
According to D4 manual only mouse/key/timeout event can have primary
handler
2017-07-05 08:35:33 +02:00
Tobia Tesan
3059c95abd
DIRECTOR: Handle keyDown in 1-ary processEvent
...
Might change semantics by calling the standard chain for input events.
That is what the D4 docs suggest anyway.
2017-07-05 08:35:33 +02:00
Tobia Tesan
137e10eef2
DIRECTOR: Add kFrameScript call
...
This follows from D4 docs.
Changes semantics, *might* break stuff.
2017-07-05 08:35:33 +02:00
Tobia Tesan
0584f936dc
DIRECTOR: Reorder processInputEvent
2017-07-05 08:35:33 +02:00
Tobia Tesan
bfe3a316c4
DIRECTOR: Swap order of processEvent calls
...
This appears to be the correct order from docs and makes code easier to
reorder.
*Might* break stuff though.
2017-07-05 08:35:33 +02:00
Tobia Tesan
57dbfbf988
DIRECTOR: Call primaryEventHandler in processInputEvent
2017-07-05 08:35:33 +02:00
Tobia Tesan
c267bc208f
DIRECTOR: Handle kEventPrepareFrame in processFrameEvent
2017-07-05 08:35:33 +02:00
Tobia Tesan
963bc4a351
DIRECTOR: Move kEventMouseUp/Down handling to processInputEvent
2017-07-05 08:35:33 +02:00
Tobia Tesan
5a9a1571fa
DIRECTOR: Include sprite.h in lingo-events.cpp
2017-07-05 08:35:33 +02:00
Tobia Tesan
f9302e2c94
DIRECTOR: Handle frame enter/exit with 1-ary processEvent call
2017-07-05 08:35:33 +02:00
Tobia Tesan
ce3aaa08d0
DIRECTOR: Implement processFrameEvent
2017-07-05 08:35:33 +02:00
Tobia Tesan
38db7dfafe
DIRECTOR: Add runMovieScript
2017-07-05 08:35:33 +02:00
Tobia Tesan
252c890bf5
DIRECTOR: Add Lingo::PrimaryEventHandler
2017-07-05 08:35:33 +02:00
Tobia Tesan
ed66169adf
DIRECTOR: Include frame.h in lingo-events.cpp
2017-07-05 08:35:33 +02:00
Tobia Tesan
4f749fc007
DIRECTOR: Add Lingo::_dontPassEvent
...
I'm not sure whether this should go here or in Director.
I'm leaving it here because _dontPassEvent changes the semantics of event handling.
2017-07-05 08:35:33 +02:00
Bastien Bouclet
13fa1b22a2
MOHAWK: Only disable videos when turning off the prison viewer
...
Closing them was causing a crash when using the lake viewer since there
is nothing to load back the lake video. Fixes Trac#9892.
2017-07-04 19:43:32 +02:00
Paul Gilbert
02dec19298
TITANIC: Fix delay for Doorbot repeat will you help message
2017-07-03 15:59:17 -04:00
Thierry Crozat
41f32c209b
BUILD: Do not link iOS static builds with AudioUnit framework
2017-07-03 18:31:43 +01:00
Lothar Serra Mari
ed063c6f45
I18N: Update translation (German)
...
Currently translated at 100.0% (962 of 962 strings)
2017-07-03 15:25:30 +02:00