For some reason getFontHeight() is off-by-one comparing to height set in
TITLE_RECT, which made text being bigger then title rect and drawing was
skipped.
This fixes https://bugs.scummvm.org/ticket/6501
The cursor position was overflowing a signed 16-bits integer once
multiplied with MULTIPLIER when using a resolution such as 2560x1440.
It would be nice changing this code to make more sense, sadly it is
thightly coupled with platform specific subclasses.
Fixes#10996.
After he gives it to transient, he should not be able to buy it again
That's because the Flask option is added to be selected only once, so McCoy won't be able to give it again to the homeless guy to get more info, and also the second time round, he gets the exact same dialogue from the bartender at the Hawker's Circle, which does not sound right.
* WINTERMUTE: Add detection for unsupported "Basis Octavus" game
This game is not supported by ScummVM, because it's 2.5D. However, there
are already other 2.5D games in detection table and the intent is to add
all known games, and support 2.5D in ResidualVM later.
* WINTERMUTE: Add detection for Alimardan dilogy
"Alimardan's Mischief" and "Alimardan Meets Merlin" are games by Iranian
developer Resana Shokooh Kavir (http://rskgd.com/)
It seems that Persian versions also exist, I'll surely look at it later:
https://www.digikala.com/product/dkp-75901
There were 2 steam releases for alimardan1:
https://steamdb.info/depot/694421/manifests/
There was only one steam release of alimardan2:
https://steamdb.info/depot/694431/manifests/
* WINTERMUTE: Add detection for Oknytt 1.12
Oknytt had 2 steam releases (1.12 and 1.13):
https://steamdb.info/depot/286321/manifests/
I have downloaded 1.12 and added detection.
* WINTERMUTE: Add empty strings between detection table lines
* WINTERMUTE: Add detection for Steam versions of reversion1 for Windows
Source: https://steamdb.info/depot/270572/manifests/
* WINTERMUTE: Add detection for Steam version of reversion1 for Linux
Source: https://steamdb.info/depot/270571/manifests/
* WINTERMUTE: Fix localization loading for Mac and Linux
Mac and Linux builds of reversion1 & reversion2 does not have any
"languages" folders.
So, we need to filter those files according to filenames too.
Once there is such filtering, there is no need for this overspecific
hack for revision1's xlanguage_pt.dcp.
* WINTERMUTE: Add detection for Steam versions of reversion2 for Windows
Source: https://steamdb.info/depot/281061/manifests/
* WINTERMUTE: Language packages priority for Linux & Mac
* WINTERMUTE: Add detection for Steam versions of reversion2 for Linux
Source: https://steamdb.info/depot/281062/manifests/
* WINTERMUTE: Add detection for Steam versions of reversion2 for Mac
Source: https://steamdb.info/depot/281063/manifests/
* WINTERMUTE: Add detection for Steam versions of reversion1 for Mac
Source: https://steamdb.info/depot/270573/manifests/
* WINTERMUTE: Add detection for old Desura versions of reversion2
Source: https://bugs.scummvm.org/ticket/6564
* WINTERMUTE: Add detection for Spanish versions of reversion1&2
As was shown by windlepoons, xlanguage_* contains additional translation
package, while data.dcp contains original translation (which is
Spanish).
So, even without owning those old releases of reversion1&2, I can wrote
detection tables for them by not looking for any "xlanguage_*.dcp" file.
However, we shouldn't use WME_ENTRY1s for Spanish, because advanced
detector say "new best match, removing all previous candidates" once it
hit a WME_ENTRY2s. Instead, let's just look for data.dcp twice to give
user a choice of several WME_ENTRY2s. Lor Linux, it's WME_ENTRY3s.
* WINTERMUTE: Filter language packages ignoring folder name
There are 4 types of multilang games:
1. Each installation contain a data.dcp package (same for all languages)
+ an additional language package. Other localization packages are not
installed. Those games are: "Helga Deep In Trouble", "Dirty Split",
"Looky".
2. Each installation contain a data.dcp package (same for all languages)
+ a folder with all localization packages + a single "selected" language
package copied to main folder. "xlanguage_" prefix is usual for
reversion series. Other games usually use "english.dcp", "spanich.dcp",
"czech.dcp", etc.
Those are: "Five Lethal Demons", "Five Magical Amulets", "Dead City",
"Oknytt", "Reversion: The Escape", "Reversion: The Meeting".
3. All localizations are inside data.dcp all-together. Those are: "One
Hellavu Day", "The White Chamber" and "James Peris: No License Nor
Control".
4. Different data.dcp build for each language. All other known games are
here.
This code covers all known filenames for localization packages and
provide several guessworks for ignoring all irrelevant localization
packages.
* WINTERMUTE: Add localization detection for Five Lethal Demons
* WINTERMUTE: Tweak detection for Dead City (Czech)
"english.dcp" is not required to play Dead City in Czech language, so we
don't need to detect it
* WINTERMUTE: Add detection table for Looky in English
I got English version here:
https://bullshit-softworx.itch.io/looky-adventure
* WINTERMUTE: Add detection for Czech versions of Helga
"english.dcp" happen to be optional
This kind of fixes https://bugs.scummvm.org/ticket/6572 WME: Rosemary -
Sprite flaw on going upwards
Some Rosemary sprites have non-fully transparent background pixels,
sprites of walking up has LOTS of them. Testing Rosemary walking
character in a test WME game demonstrates some glitches with original
WME as well. However, character sprite is downscaled most of time, and
with original WME it isn't that seen when sprite is downscaled.
This pull request provides a workaround for this case instead of
changing downscaling algorithms:
* if game ID is "rosemary"
* if loaded sprite is from "actors" folder
* if bytesPerPixel is 4
* if some pixel's alpha is between 1 and 15
* set this pixel's alpha to 0
This code is used only in debug mode and only to display some script
counters.
States are handled in the very same way in WME Lite, so there is no
reason to log tons of warning here.
Tanya Grotter series has a cheat, that is triggered with
(Keyboard.IsKeyDown("A") && Keyboard.IsControl && Keyboard.IsAlt &&
Game.DebugMode) condition.
vKeyToKeyCode(97) would produce a warning message, fixed this.
Fixes a wrong state for fish dealer which will end up showing her
up in chapter 5, but her model is not included in CDFRAMES.DAT for
chapter 5, that would lead to an error / engine crash.
Alpha channel is inverted in the game assets and that lead to issues in
OpenGL renderer. E.g. screenshot of savegames were partly black or
showing artifacts
closes#10983
This implementation now matches previous ShellExecute() calls, so we are
now consistent in that regard. It also
silences a warning in Mingw complaining about a type mismatch.