148 Commits

Author SHA1 Message Date
Cameron Cawley
ef07d1621e KYRA: Use SeekableReadStreamEndianWrapper 2022-11-29 00:06:49 +01:00
Le Philousophe
dbe47a28ba KYRA: Don't use unsafe sprintf and vsprintf 2022-10-23 22:46:19 +02:00
athrxx
3947df46f8 KYRA: code style fixes 2022-10-10 22:44:02 +02:00
athrxx
6a60a73840 KYRA: fix regression from 7204eaaf
(bug no. 13886 - Kyrandia 2 and 3 crashes when trying to open options)
2022-10-08 01:01:48 +02:00
athrxx
7204eaaf34 KYRA: more code style cleanup 2022-09-24 15:44:14 +02:00
athrxx
f0a2d470b6 KYRA: (HOF) - fix palette glitch when loading savegames
This is the same in the original interpreter, but I assume
they just don't update the screen as much as we do.
The problem is that the new scene palette is
generated and set before the new scene is actually drawn. So there is a moment where the old scene is visible with the new palette...
2022-09-23 21:37:45 +02:00
athrxx
3a49ea6248 KYRA: reduce unsafe string ops
(replace all strcpy calls and similar fixes)
2022-09-22 21:01:16 +02:00
athrxx
015820f0bd KYRA: init non-initialized member vars 2022-09-20 22:14:53 +02:00
athrxx
703cd9102d KYRA: add check to avoid invalid mem access 2022-09-19 20:49:24 +02:00
athrxx
8e87fe8c49 KYRA: get rid of wshadow warnings 2022-09-18 21:59:23 +02:00
athrxx
eb6a769085 KYRA: (LOK/Mac) - fix talkie version
The talkie version was silently killed while we completed the support for the regular Mac version.

Also cleanup all the LOK static resources a bit (remove garbage offsets).
2022-08-13 16:51:22 +02:00
athrxx
baa9524376 KYRA: (LOK/KOR) - fix hangul input glitch
(assert could be triggered by certain key combinations at the end of the input line)
2022-07-17 18:17:56 +02:00
athrxx
b7b71597fe KYRA: (HOF) - fix typo 2022-07-16 16:19:27 +02:00
athrxx
f1b085d867 KYRA: (MR/ZH) - fix ZH font issue when language is set to other than ZH (Step 1)
This is only one of two steps. It slightly changes the detection so that the game always "remembers" whether it is Simplified or Traditional Chinese, even when the language is set to English, German or French.
2022-06-28 00:36:29 +02:00
BLooperZ
b03d209c52 KYRA: Support hebrew fan translation of MR 2022-06-26 11:25:49 +02:00
athrxx
f1d7599cf4 KYRA: (LoK) - avoid starting the same song twice after loading savegame
(The game restarts the last song which is stored in the savegame, but for many scenes the scene entry scripts will start the same song again right afterwards. This causes some audible "stuttering".

HOF and MR don't seem to require this fix. For these games the music restart is controlled via the last argument of enterNewScene(). If it is set to 1 then no song will be started. And that is what happens when calling from loadGameState()...
2022-06-23 19:05:53 +02:00
athrxx
aa44656733 KYRA: (LoK/MR) - fix options menu text colors 2022-06-16 11:10:56 +02:00
athrxx
bbff86e990 KYRA: (LOL) - improve save/load menu performance
(reduce calls to updateScreen)
2022-06-13 21:42:54 +02:00
athrxx
05b9df0821 KYRA: (LoK/KOR) - make use of new Johab string encoding 2022-06-13 19:38:51 +02:00
athrxx
b5079ca5c7 COMMON: add Korean Johab string encoding 2022-06-13 19:38:47 +02:00
athrxx
2b05ca1dbc KYRA: (LoK/KOR) - implement Hangul save name input
(The names will be displayed incorrectly in the GMM/launcher even if the GUI language is set to Korean. We don't have the required encoding (apparently ks_c_5601-1987 or similar).
2022-06-13 19:38:34 +02:00
athrxx
5eea71c0c7 KYRA: fix warnings 2022-06-09 01:17:13 +02:00
athrxx
d2d4765aaf KYRA: (LoK/KOR) - some preparations for Hangul input
(not working yet)
2022-06-09 00:49:05 +02:00
athrxx
ae4934bc8c KYRA: (LoK/KOR) - more accuracy fixes 2022-06-09 00:49:05 +02:00
athrxx
a6fb73725a KYRA: (LoK/KOR) - fine tune ingame menus 2022-06-09 00:49:05 +02:00
athrxx
6d83986bca KYRA: (LoK/KOR) - more font related fixes
e. g.
- font spacing
- scene message field
- ingame menus
- Brynn's note
2022-06-09 00:49:05 +02:00
athrxx
4670159f26 KYRA: (LoK/KOR) - inital font support
This is still glitchy and will need some more polishing, but at least the intro runs...
2022-06-09 00:49:05 +02:00
athrxx
4325e4ac35 KYRA: (HOF/CD) - fix speech volume slider 2022-06-07 17:59:01 +02:00
Eugene Sandulenko
5e05f93f36
ALL: Remove Symbian port 2022-05-28 12:32:29 +02:00
athrxx
d8004bebba KYRA: add more metadata to savegames
(creation date/time and playing time)
2022-05-22 19:57:46 +02:00
athrxx
24aa895a00 KYRA: (EOB/LOL) - improve version strings
Apparently in some builds the gScummVMVersion still contains the revision number (contrary to the comment in base/version.h, actually). I normally don't notice that, since it doesn't happen in my own builds. The long strings will break text fields that can't have strings of that length.

I'll now just generate my own version from gScummVMVersion, so I do get the desired (short) layout.
2022-05-20 22:18:02 +02:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
athrxx
a939862cec KYRA: (LoK/Mac) - add support for low quality music
(the driver support was already there, this commit just adds the additional menu setting and the necessary adjustments)
2021-12-17 20:29:26 +01:00
athrxx
9673b0a0ea KYRA: implement idle screen updates
Apparently, as I have been told, there are (still) OS'es with non-compositing window managers which may cause glitches when drawing windows over the ScummVM window, unless the engine keeps updating the screen. So, now we do that, even if there isn't any actual on-screen activity. The whole thing is a bit more tricky than it would appear at first glance, since one misplaced/untimely screen update may cause palette glitches. I have implemented a timer which is reset whenever actual on-screen activity happens. That should work around any such glitches.

Maybe the rates for the timer have to be tweaked some more. I have also added an ifdef so this could be disabled or restricted to certain platforms if required.
2021-12-05 15:18:38 +01:00
athrxx
1e51f16572 KYRA: (LOK/HOF/Traditional Chinese) - more fixes to save/load menus 2021-12-01 22:39:33 +01:00
athrxx
f436ebbeb0 KYRA: (HOF/Traditional Chinese) - fix ingame texts
(adjust ui, text formatting, menus, etc)
2021-12-01 22:39:24 +01:00
athrxx
ad05db611d KYRA: (HOF/Traditional Chinese) - fix intro and main menu 2021-12-01 22:38:35 +01:00
athrxx
5eacbbb052 KYRA: (MR/Chinese) - fix audio menu text glitch 2021-11-15 02:45:31 +01:00
athrxx
a7fda28519 KYRA: (LoK/Traditional Chinese) - finish support
(add font drawing, gui and text formatting fixes etc.)
2021-11-15 01:01:25 +01:00
Orgad Shaneh
da751361a4 KYRA: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
athrxx
247fbe5492 KYRA: (EOB/LOL) - reduce calls to updateScreen
(to improve performance with enabled vsync  option)
2021-11-11 19:30:22 +01:00
trembyle
c740f96f63 COMMON: Normalize and document language maintenance
* Add documentation to add or maintain language values
* Fix and reorder existing entries to match ISO standards
2021-11-11 12:06:15 +01:00
athrxx
ecfc1298da KYRA: (LoK/Mac) - tweak save/load at final sequence start
- make sure, that the correct song starts when loading
- also fix the fading
2021-11-10 21:24:24 +01:00
Orgad Shaneh
14f516282c KYRA: Replace new[]/memset with new[]() 2021-11-10 19:53:15 +01:00
athrxx
173670a2c4 KYRA: (MR) -fix bug no. 13044
("KYRA: Graphic glitch in Legend of Kyrandia 3")
2021-10-28 16:55:00 +02:00
athrxx
ece7e26b41 KYRA: (MR/Traditional Chinese) - add support 2021-10-26 17:57:01 +02:00
Benoit Pierre
e24fe0a0cc KYRA: (LOL) - fix keymap not getting re-enabled after a save 2021-10-23 22:50:59 +02:00
athrxx
072c54318d KYRA: (LOL) - replace sound list char* array with Common::StringArray 2021-10-12 20:45:52 +02:00
Orgad Shaneh
6a68d8b7e5 ENGINES: Do not assume that MessageDialog accept is 1 and cancel is 0
Use the enum everywhere.

A follow-up commit will change the order.

Also reduce the use of kMessageCancel to minimum.
2021-08-18 22:34:02 +02:00
BLooperZ
cbb2e41acc KYRA: fix hebrew text in HOF intro + menu 2021-08-17 19:43:48 +02:00