Unfortunately, for the unexperienced Myst player, the engine options
regarding transisionts and 'Zip' mode are not exactly descriptive.
Luckily, the official manual has pretty neat descriptions of what those
options do, therefore adding them as tooltips.
This fixes the loading of the map in the Polish language variant of
Myst 25th Anniversary Edition. However, a further fix is likely needed
as the map which is 24bpp with no palette renders with inverted colors.
Apparently, when reading a movie file name the engine needs to read
an even number of bytes, so if the length of the file name is even
(not counting the terminating 0) it has to read an extra byte. This
was already done, but apparently the String class used to allow you
to add terminators to a string, and these were then counted into
the length of it. Not adding the terminator avoids this disambiguity.
The german and french version of "Just Grandma and Me" (Mohawk engine) have the special characters "ç" and "ö" in their config files. This causes ScummVM to crash when trying to start the game in german or french. Allowing non english chars in config files for Living Books games fixes this issue.
For each engine:
- Make a new folder detection
- Move detection-related files inside the folder
- Add a new module "enginename/detection"
- Add DETECT_OBJS here
- Adjust the normal engine module to remove detect_objs
- Adjust every file for the new changes.
Common::MacResMan is now able to open files from a specified
Common::Archive. This is a bit hacky as dynamic_cast is used to break
the Archive encapsulation to retreive the underlying FSNode. It should
however be more correct than the previous code that assumed files were
at the root of the currently running game's path.
AdvancedDetector constructs a Common::Archive from its FileMap based
filesystem cache and uses it to detect the mac resource fork files.
This cuts the time it takes to run the detection code with all the
engines enabled as dynamic plugins on the 3DS to 30 s from 280 s.
Up until last commit, everything was working fine but the amount of files changed was too large. This commit tries to reduce the changes.
- Add a fake constructor to Keymap, text-to-speech, setDescription (save-state)
- Redirecting functions for PopUpWidget::appendEntry, ButtonWidget::setLabel, GUIErrorMessage
- Use the above functions and constructors to reduce changes in Engines
- Fix warnings being in unicode. Only output english text in - Warnings, Errors, etc.
- Mark some strings as "translation" strings. (Not yet added to POTFILES)
- Remove some CP related things from po/modules.mk
- Previously used some Common::convertToU32 where it was not necessary, replace this with u32constructor