Commit Graph

89175 Commits

Author SHA1 Message Date
Thierry Crozat
25ff69c250 IOS7: Use scrollview for keyboard accessory view
This allows to have more buttons than what can be displayed on the
screen, and now to have all the same buttons on iPhone and on iPad.
2019-06-30 12:36:43 +01:00
Thierry Crozat
ce9e776629 IOS7: Map three finger swipes to arrow keys
Also use the pinch gesture to show/hide the keyboard. Previously
it was using the three fingers swipe up and dowm, which is now
mapped to arrow keys.
2019-06-30 12:36:43 +01:00
Thierry Crozat
5232cf376b IOS7: Remove key mapping for function and return keys
Those keys are not present on the virtual keyboard accessory view.
This should fix bug #10314: LSL7: Unable to open Xqwsts's locker
on iOS.
2019-06-30 12:36:43 +01:00
Thierry Crozat
3ba9245138 IOS7: Add input accessory view to virtual keyboard
This adds buttons for some keys that are not present on the iOS
keyboard, such as the function and arrow keys, as well as a GMM
key.
2019-06-30 12:36:43 +01:00
lolbot-iichan
d6a1248a16 WINTERMUTE: Increase window title height by 1 for "5 Lethal Demons" game
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
2019-06-30 12:20:36 +03:00
sluicebox
cf274fa47e SCI: Fix SQ4 English Amiga dress logic, bug #11004 2019-06-30 12:13:16 +03:00
jepael
ea3f8f2e33 BLADERUNNER: JANITORIAL: Fix a compiler warning with a const cast. (#1719)
Tested and it works. Thanks for the fix!
2019-06-29 09:57:55 +02:00
Thanasis Antoniou
a81e3add2f BLADERUNNER: JANITORIAL: Code formatting fixes 2019-06-28 15:30:44 +03:00
Thanasis Antoniou
bd75898894 BLADERUNNER: Pause NPC walkers for Gaff scene in CT12 2019-06-28 15:30:43 +03:00
Thanasis Antoniou
54ad2c9aaf BLADERUNNER: Avoid freeze in Gordo scene at CT05
If McCoy re-climbs the stairs immediately after retiring Zuben and having picked up the photo
2019-06-28 15:30:43 +03:00
sluicebox
543b9cb114 SCI32: Fix QFG4 character selection, bug #11002 2019-06-28 08:33:03 +03:00
sluicebox
148a9b7058 SCI32: Fix kShakeScreen32 parameter count check 2019-06-28 08:30:19 +03:00
Paul Gilbert
13e7926849 GLK: ALAN2: Fix loading memory for Big Endian 2019-06-27 18:55:25 -07:00
Bastien Bouclet
0a8049e30c SDL: Fix gamepad mouse cursor wrapping on hi-res screens
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.
2019-06-27 20:12:52 +02:00
lolbot-iichan
fa4d310fb4 WINTERMUTE: Do not optimize out alpha blits on rotation
This fixes defect #10684: 1-pixel width sprite becomes a big rectangle
if rotation is applied.

Case was originally reproduced with FoxTail game for WME, then reduced
to testcase
https://github.com/tobiatesan/wme_testsuite/tree/master/time_test/packages
2019-06-27 10:59:35 +03:00
sluicebox
1f0f4c9642 SCI32: Make QFG4 tentacle patch GOG compatible 2019-06-27 10:56:23 +03:00
Thanasis Antoniou
fb71c73ff0 BLADERUNNER: Fix obstacle map in CT04
Prevent transient from walking through scenery alongside the right wall
2019-06-26 20:09:10 +03:00
Thanasis Antoniou
bb9bd91436 BLADERUNNER: Pause walkers for special loop in RC03
Otherwise they may glitch with the background at the Hawker's Circle entrance.
2019-06-26 19:49:47 +03:00
Thanasis Antoniou
378f186327 BLADERUNNER: McCoy should holster his gun in MA07 when Gaff is there 2019-06-26 19:38:00 +03:00
Thanasis Antoniou
2d4dffdac0 BLADERUNNER: Stop McCoy from buying absinthe a second time
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.
2019-06-26 18:26:40 +03:00
Thanasis Antoniou
8f74f0f47e BLADERUNNER: Correct fix for maze target timings
Still only applies in Hard and Normal mode difficulty
2019-06-26 16:17:48 +03:00
Thanasis Antoniou
e60aac53b1 BLADERUNNER: Fix waiting time for targets in Maze
Applies only for normal and hard mode. Easy mode keeps the original more relaxed behavior.
2019-06-26 15:21:55 +03:00
Thanasis Antoniou
2e1a84694b BLADERUNNER: Fix for police in UG07 post Guzza scene
Remove option for them to be there altogether to avoid overlap with Clovis
2019-06-26 13:46:16 +03:00
Thanasis Antoniou
d1a2a2ff91 BLADERUNNER: Fix UG04 train disable control and Police AI 2019-06-26 13:25:15 +03:00
sluicebox
9fe95b9603 SCI32: Fix QFG4 Ad Avis capture lockup, bug #11001 2019-06-26 07:30:03 +03:00
lolbot-iichan
9bee1b5e31 WINTERMUTE: Implement Game.OpenDocument() method
Game.OpenDocument() is used to open links for developer's site or social
account in games like hellavuday, 5ld, etc.
2019-06-26 07:15:14 +03:00
sluicebox
c1610a9fd1 SCI32: Fix QFG4CD Grooper crashes at inn and monolith
Fixes bugs #10747, #10760
2019-06-26 07:12:51 +03:00
rsn8887
df03352c27 CONFIGURE: Enable libcurl on Switch (works now) 2019-06-25 21:32:49 -05:00
Thanasis Antoniou
a85ee3218f BLADERUNNER: Fixing clipping into Runciter's closed door 2019-06-25 23:00:52 +03:00
Thanasis Antoniou
78667edd0f BLADERUNNER: Fix Elevator blink in when missing from UG08
Happens, if elevator missing because McCoy took it down to UG13 and then went the long way round
2019-06-25 22:40:50 +03:00
Thanasis Antoniou
35cf41683e BLADERUNNER: fix wanring for clearNeverRepeatWasSelectedFlag 2019-06-25 15:44:27 +03:00
lolbot-iichan
3c1e883ff0 WINTERMUTE: Add lots of entries to detection table and refactor handling of localization packages
* 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
2019-06-25 13:28:03 +03:00
lolbot-iichan
bf19375d14 WINTERMUTE: Add workaround for sprite glitch at Rosemary game
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
2019-06-25 08:20:27 +03:00
lolbot-iichan
c32027672e WINTERMUTE: Add comments + warning() for IsKeyDown() method 2019-06-25 08:10:16 +03:00
lolbot-iichan
d53bd4e7a8 WINTERMUTE: Add more details in openDiskFile() comment 2019-06-25 08:10:16 +03:00
lolbot-iichan
4b763f0e9e WINTERMUTE: Add debugN + comment for getNumScripts() 2019-06-25 08:10:16 +03:00
lolbot-iichan
62aebde208 WINTERMUTE: Support even more keycodes at IsKeyDown() 2019-06-25 08:10:16 +03:00
lolbot-iichan
1e005d37e2 WINTERMUTE: Handle enum in GetNumScripts
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.
2019-06-25 08:10:16 +03:00
lolbot-iichan
b9af5ad304 WINTERMUTE: Fix IsKeyDown to work with ASCII
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.
2019-06-25 08:10:16 +03:00
lolbot-iichan
555e400d76 WINTERMUTE: Hardcode known path prefix for tanya2
Missing path is
"d:\engine\ТГ2\tg_ie_080128_1005\data\interface\pixel\pixel.png" from
scenes\code\episode_01\scene_comics_1\scene_comics_1.scene
2019-06-25 08:10:16 +03:00
lolbot-iichan
c2b7fc526e WINTERMUTE: Detection tables for Tanya Grotter dilogy
Tanya Grotter games are based on first 2 books of a Russian fantasy
novel series by Dmitri Yemets.
Those games were both released in Russian only.
2019-06-25 08:10:16 +03:00
sluicebox
28fa491707 SCI32: Fix QFG4 Rabbit combat getting stuck, bug #11000 2019-06-25 07:55:33 +03:00
Henrik "Henke37" Andersson
39f63f1236 WIN32: Make use of the window handle when calling ShellExecute. 2019-06-25 07:54:31 +03:00
Thanasis Antoniou
2382200205 BLADERUNNER: Keydown should be ignored in VK 2019-06-25 01:54:51 +03:00
Thanasis Antoniou
b4ee8fe294 BLADERUNNER: VK both Runciter and Grigorian is now possible
For restored content version
2019-06-25 01:54:51 +03:00
Peter Kohaut
20cc2c42ba BLADERUNNER: Fix Fish dealer in chapter 5
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.
2019-06-25 00:26:52 +02:00
Peter Kohaut
dd0c030278 BLADERUNNER: Fixed alpha channel issues
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
2019-06-24 21:45:56 +02:00
Thierry Crozat
3036f8161a I18N: Update translations templates 2019-06-24 19:41:23 +02:00
Thierry Crozat
7b65d4ee4f I18N: Regenerate translations data file 2019-06-24 19:41:17 +02:00
Lothar Serra Mari
119bcc2b90 WIN32: Use HINSTANCE for OSystem_Win32::openUrl
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.
2019-06-24 17:00:20 +03:00