Commit Graph
262 Commits
Author SHA1 Message Date
Dmitry Gladkov d937daceb4 STARK: Play sound when hovering active cursor (#2566)
STARK: Play sound when hovering over action items
2020-10-26 20:57:25 +01:00
Eugene Sandulenko 6a306affdb STARK: Moved constants to enum from static members, to make OSX compiler happier 2020-10-15 12:14:45 +02:00
Paweł Kołodziejski 35b9cccbde ALL: Merge ResidualVM 2020-10-09 19:44:13 +02:00
Pawel Kolodziejski 8f4e1c6cf3 Sync with ScummVM rev. 654b8208b8 2020-06-22 08:14:16 +02:00
Bastien Bouclet 72767da72f STARK: Implement the new shared autosave system
Fixes #1633.
2020-05-11 19:32:18 +02:00
Bastien Bouclet c1431b58c1 GRAPHICS: Move stem darkening to the last load ttf argument
Fixes the GUI passing the charset mapping in the argument slot for stem
darkening. Fixes the Russian characters being improperly displayed in
the GUI.

Fixes #1560.
2019-07-01 17:25:25 +02:00
Bastien Bouclet 308c018141 STARK: Add an engine option to enable font anti-aliasing
Makes use of stem darkening which requires at least FreeType 2.9
2019-06-29 16:42:55 +02:00
Bastien Bouclet db33fb3e41 STARK: Fix the file extension when extracting textures 2019-06-02 17:13:14 +02:00
Bastien Bouclet 651eac1d47 STARK: Implement background sound playback
Fixes #1544.
2019-05-23 06:52:37 +02:00
Bastien Bouclet 3bf417c116 STARK: Fix font size computation when toggling fullscreen 2019-05-16 22:22:36 +02:00
Bastien Bouclet 7e09c6c73a STARK: Ignore 'gui.ini' by default for the english versions
Some versions have settings that don't look good. Especially the GOG.com
version.
2019-05-06 20:50:23 +02:00
Bastien Bouclet 84487958d2 STARK: Workaround for the computer font being too small in the GOG version
In the GOG version the font size for the computer (Arial) is set to 11
but 14 is required for the text to be properly aligned and the "White
cardinal" text to be clickable.

Fixes #1528.
2019-03-31 15:11:26 +02:00
DouglasLiuGamer b39fb3cf1e STARK: Bind screenshot saving to key F8 2019-02-23 09:52:09 +01:00
Bastien Bouclet e6a129d908 STARK: Load the font settings from gui.ini 2019-01-28 18:20:00 +01:00
Bastien Bouclet 462f087cdb STARK: Add text encoding handling 2019-01-28 18:20:00 +01:00
Bastien Bouclet 282d82df85 STARK: Implement the confirmation dialogs using the original style 2019-01-27 17:53:50 +01:00
Bastien Bouclet 2b9242c8ea STARK: Delay playing FMVs until all the location change scripts are done
This ensures no sound is started by the scripts after the game has
already been paused. In-game sounds no longer play during FMVs.
2019-01-25 21:02:02 +01:00
Bastien Bouclet e3c6748a7f STARK: Rework skeletal animation blending control
The previous animation blending system had some flows. The
AnimationHandler was owned by the model which was incorrect, since it's
possible to change models during an animation sequence. The
AnimationHandler is now owned by the item, ensuring there is only one
per character instance.

We now ignore animation change requests for one frame. This is because
the scripts often cause an animation change, and request another one the
very next frame. This used to cause issues because we were blending the
latest animation with the previous one which was only active for one
frame, causing a discontinuity. This new solution is kind of a hack.
Hopefully it is good enough and there is no need to implement animation
blending for more than two animations at once.
2019-01-25 09:48:31 +01:00
Bastien Bouclet 281ecbdc86 STARK: Optionally do alpha pre-multiplication when loading PNGs 2019-01-20 10:52:04 +01:00
Bastien Bouclet b9a1b8eefd STARK: Optionally use linear filtering when rendering backgrounds 2019-01-16 20:20:39 +01:00
Bastien Bouclet 45c5cf0c80 STARK: Add loading of replacement PNG files for the background images
The replacement PNG files can have larger dimensions when compared to
the original XMG images, enabling the creation of a high resolution mod.

The game looks for the replacement files in the game directory and then
in the xarc subdirectory of the directory containing the archive in
which the xmg picture to be replaced is located. For instance:
'1e/00/xarc/fountain_layercenter.png' should be used for the Venice park
background.
2019-01-16 19:43:22 +01:00
Bastien Bouclet 189ba0a40d STARK: Rework the services instanciation and move keyboard handling 2019-01-03 07:46:19 +01:00
Bastien Bouclet fee73851f0 STARK: Delay changing screen after a FMV ends
Prevents the game screen from being visible for one frame before scripts
have a chance to update it after a FMV ends.

All user interface screen changes should probably be updated to work
that way. Running the update method of a screen and the render method of
another on the same frame seems really bad.
2018-12-02 19:51:42 +01:00
Bastien Bouclet 036cca6b56 STARK: Implement lighting for props 3d models 2018-12-01 11:25:55 +01:00
Bastien Bouclet 24eda9e18d STARK: Adjust a few TODOs 2018-11-22 13:35:47 +01:00
Bastien Bouclet 191113819b STARK: Save and restore the previous location stack
Fixes #1497.
2018-11-17 10:59:07 +01:00
Bastien Bouclet 8d3ea2f5a1 STARK: Fix speeches that have not started playing waking up their script
Fixes #1499.
2018-11-10 21:44:05 +01:00
Bastien Bouclet 5373482b90 STARK: Save model item animation properties in the active level
These properties are saved for inactive levels as well. However inactive
level properties are restored too early and would sometimes be
overwritten by the on enter location callback. Now we save the animation
properties in the active level as well. These properties are restored
after the location enter callback.

Fixes #1496.
2018-11-10 21:44:05 +01:00
Bastien Bouclet 0f3cf3e511 STARK: Introduce a onGameLoop event to stop abusing onRender for updates
Fixes #1492 where rendering the screen to save a screenshot would run
some dialog related script updates.
2018-08-28 21:24:33 +02:00
Douglas Liu 86047569cd STARK: Add chapter range checking 2018-08-15 14:08:37 +02:00
Douglas Liu 180294c02f STARK: Bind returning to previous screen to key Esc 2018-07-14 15:57:18 +08:00
Douglas Liu fc727c56c4 STARK: Fix bug in binding of key F5 2018-07-11 22:17:03 +08:00
Douglas Liu 045b071f9b STARK: Small style change 2018-07-11 22:13:56 +08:00
Douglas Liu c7c407d965 STARK: Improve cycling the inventory 2018-07-11 21:57:37 +08:00
Douglas Liu 7fb942f073 STARK: Bind displaying exit locations to key X 2018-07-10 23:33:04 +08:00
Douglas Liu a16d469231 STARK: Render exit symbols on the screen 2018-07-09 23:49:51 +08:00
Douglas Liu b0e25564cb STARK: Bind dialog options to number keys 2018-07-03 23:06:36 +08:00
Douglas Liu 762a9baab1 STARK: Bind dialog panel to related keys 2018-07-02 23:26:24 +08:00
Douglas Liu 82d818135b STARK: Bind inventory scrolling to related keys 2018-07-02 18:12:19 +08:00
Douglas Liu 3d5bb3601a STARK: Bind cycling inventory to Key A and S 2018-07-02 13:14:24 +08:00
Douglas Liu 719c2ad09a STARK: Bind toggling subtitles to F9 2018-07-02 11:56:05 +08:00
Douglas Liu 874f468ba0 STARK: Bind quiting to main menu to F10 2018-07-01 23:20:50 +08:00
Douglas Liu 93c508647d STARK: Bind menus to function keys 2018-07-01 23:20:50 +08:00
Douglas Liu 7df34a6565 STARK: Move the dialog function to UserInterface 2018-07-01 13:44:48 +08:00
Douglas Liu 7977a11e49 STARK: Small fixing 2018-07-01 11:42:56 +08:00
Douglas Liu e492ebf7a1 STARK: Disable using texts from language.ini 2018-06-30 17:58:48 +08:00
Douglas Liu 34993c7275 STARK: Bug fixing 2018-06-30 17:26:26 +08:00
Douglas Liu b8a8acb7bf STARK: Open the GameMessage service 2018-06-30 16:49:02 +08:00
Douglas Liu f1b3caba08 STARK: Implement the Book Of Secrets Open command 2018-06-29 23:45:54 +08:00
Douglas Liu 6120877b99 STARK: Cache quiting to main menu and perform later 2018-06-29 21:44:08 +08:00