144767 Commits

Author SHA1 Message Date
Walter Agazzi
63fd2b928a AGS: Import glyph loader and some helpers from freetype2.1.3 2023-09-03 22:27:43 +02:00
Walter Agazzi
e4548cf1d7 AGS: Import autohinter module from freetype2.1.3 2023-09-03 22:27:43 +02:00
Walter Agazzi
1856e56202 GRAPHICS: Add Init/Done_FreeType_With_Mem to common freetype
These are needed for the new alfont implementation in AGS
2023-09-03 22:27:43 +02:00
ScummVM-Translations
e369852de9 I18N: Update translations templates 2023-09-03 20:26:48 +00:00
Cameron Cawley
0c98d170ca CONFIGURE: Enable NEON for all IOS7 targets
The SCUMMVM_NEON definition is alredy added by default for aarch64
host cpus. NEON is also supported on iOS devices running on armv7
cpus. Make sure to enable NEON for all ios7 devices.
2023-09-03 22:26:37 +02:00
Lars Sundström
f943fba3d0 IOS7: Enable kFeatureCpuNEON in IOS7 backend
Make use of the NEON optimisations in iOS and tvOS.
2023-09-03 22:26:37 +02:00
Lars Sundström
76af53dc7f CREATE_PROJECT: Define SCUMMVM_NEON for iphoneos and tvos
Add the definition of SCUMMVM_NEON in create_project for the iOS
and tvOS targets. Do not add the same definition to corresponding
simulators since they can run on x86_64 hosts, which for obvious
reasons lacks support for NEON.
2023-09-03 22:26:37 +02:00
Lars Sundström
db192eed39 AGS: Add SCUMMVM_NEON prepreocessor flag to surface_neon.cpp
The surface_neon.cpp file is only added to the project if the flag
SCUMMVM_NEON is defined. However some backends, e.g. iOS, adds the
definition of SCUMMVM_NEON in create_project so the file can be
added to the project during configuration.
The same backend can then unset the definition due to changing
build target, the iOS simulator in this example, which runs can
run on x86_64 hosts which doesn't support NEON.

Since the project still include the source file it will be compiled.
Make sure to not build the file if not SCUMMVM_NEON is defined at
compile time.
2023-09-03 22:26:37 +02:00
Lars Sundström
e60db69c41 GRAPHICS: Add SCUMMVM_NEON prepreocessor flag to blit-neon.cpp
The blit-neon.cpp file is only added to the project if the flag
SCUMMVM_NEON is defined. However some backends, e.g. iOS, adds the
definition of SCUMMVM_NEON in create_project so the file can be
added to the project during configuration.
The same backend can then unset the definition due to changing
build target, the iOS simulator in this example, which runs can
run on x86_64 hosts which doesn't support NEON.

Since the project still include the source file it will be compiled.
Make sure to not build the file if not SCUMMVM_NEON is defined at
compile time.
2023-09-03 22:26:37 +02:00
PushmePullyu
4c092c26ba GUI: GridWidget: Remove redundant scroll bar update
sortGroups(): Move the call to scrollBarRecalc() up and delete
superfluous code so the scroll bar is only updated once.
2023-09-03 21:39:01 +03:00
PushmePullyu
277de28b3e GUI: GridWidget: Update scroll bar position early in sortGroups()
Propagate changes in GridWidget::_scrollPos to
ScrollBarWidget::_currentPos before calling
ScrollBarWidget::checkBounds().

Fixes #14551
2023-09-03 21:39:01 +03:00
Kaloyan Chehlarski
b2a3194aad NANCY: Implement CollisionPuzzle
Implemented the record type responsible for the
grid puzzle where pieces slide in four directions until they
hit a wall or another piece.
2023-09-03 18:37:48 +03:00
Kaloyan Chehlarski
3279224042 NANCY: Show load button immediately after saving 2023-09-03 18:37:48 +03:00
Kaloyan Chehlarski
e9675a0e39 NANCY: Implement OrderItemsPuzzle
Implemented the OrderItemsPuzzle, which is an upgraded
version of OrderingPuzzle allowing for an interaction with
an inventory item.
2023-09-03 18:37:48 +03:00
Walter Agazzi
09ca6d9c19 SWORD2: Add detection entry for Russian Novy Disk
TRAC report #14550
2023-09-03 12:30:53 +02:00
Antoniou Athanasios
418683c966 I18N: Update translation (Greek)
Currently translated at 100.0% (1980 of 1980 strings)
2023-09-03 05:59:42 +00:00
Purple T
0b99e0ef45 I18N: Update translation (French)
Currently translated at 100.0% (1980 of 1980 strings)
2023-09-03 05:39:43 +00:00
D G Turner
311784a48c SWORD1: Fix Signed vs. Unsigned GCC Compiler Warning 2023-09-03 02:56:25 +01:00
VAN-Gluon
5eed21e6e1 I18N: Update translation (Japanese)
Currently translated at 100.0% (1980 of 1980 strings)
2023-09-02 22:07:46 +00:00
Marcel Souza Lemes
a801e6b7c9 I18N: Update translation (Portuguese (Brazil))
Currently translated at 100.0% (1980 of 1980 strings)
2023-09-02 22:07:45 +00:00
IlDucci
c5115ca864 I18N: Update translation (Spanish)
Currently translated at 100.0% (1980 of 1980 strings)
2023-09-02 22:07:34 +00:00
Walter Agazzi
fff4c01926 I18N: Update translation (Italian)
Currently translated at 100.0% (1980 of 1980 strings)
2023-09-02 18:53:02 +00:00
Walter Agazzi
fd47e099e6 AGS: Properly enable vsync following ScummVM setting
This allows scummvm to override the vsync setting, instead of
 just using the value set in the game acsetup config file
2023-09-02 17:55:18 +02:00
Kaloyan Chehlarski
d520b0c8db NANCY: Fix arrow cursor hotspot
Added a manual fix for the Nancy games' awful hotspot
position for the arrow cursor.
2023-09-02 17:24:39 +03:00
Kaloyan Chehlarski
13f95f1781 NANCY: Implement SafeLockPuzzle
Implemented the puzzle type responsible for safe locks
with a single dial. First used in nancy3.
2023-09-02 17:24:39 +03:00
Kaloyan Chehlarski
e11ec7c8cd DEVTOOLS: Fix broken strings in nancy3 data
Added a bunch of missing commas that were causing
strings to get merged.
2023-09-02 17:24:39 +03:00
Kaloyan Chehlarski
a62f7cd7d7 NANCY: Implement TangramPuzzle
Implemented the puzzle type responsible for nancy3's tile
fitting puzzle.
2023-09-02 17:24:39 +03:00
Walter Agazzi
f1ce81461e AGS: Engine: hotfix game.top_inv_item script variable not working
Reimplemented from upstream a526a401cbf716ac7c0fc09eed92d24d60b54471
(branch 2.6.1)
This fixes the inventory scrolling in King's Quest 3 (Infamous Adventures)
and possibly other games of the era
2023-09-02 14:05:41 +02:00
Walter Agazzi
1c520e25a3 AGS: Engine: add proper asserts for number of GUI controls for legacy saves
From upstream ea34dd3e1758c6de4c8fc09d8d65dabc60c35b0f
2023-09-02 14:05:29 +02:00
Walter Agazzi
57e9963b2e AGS: Engine: fixed game package test when loading an old save
From upstream 40b679d25cd4ca41fc297ae37effac631d066bd3
2023-09-02 14:03:04 +02:00
Walter Agazzi
947acb21ec AGS: Engine: fixed improper cleanup of scrGUI array in unload_game_file()
From upstream 045b4a6ed1e09a2d563ee5ad0addf601f700173d
2023-09-02 14:02:52 +02:00
Walter Agazzi
4f069b677a AGS: Engine: fixed characters sometimes wait after moving before idle anim
Apparently "doing_nothing" flag was set too late, resetting previously set value.
From upstream bba8e84307e263953520a39bc5a31014e3bd04cf
2023-09-02 14:02:21 +02:00
Walter Agazzi
94a8518dd7 AGS: Engine: don't reset idle animation during speech with no speech view
This fixes idle animation getting reset to frame 0 at the blocking speech start
 if there's no speech view set. In such case the idle anim is expected to continue
 playing seamlessly.
 From upstream 7b399933a291a05e868cd9589b02d83d05f33314
2023-09-02 14:02:10 +02:00
Walter Agazzi
7cd860207d AGS: Engine: add object and char assertions in Get/SetProperty functions
Since older commit 5f3b8eb the properties are stored in vectors,
strictly resized to the number of characters and objects.
But the script functions that access these do not do any assertion
whether the object or char is valid, which could cause bad mem
access in case script loops over a array of objects of MAX_OBJECTS
size, or tries to access something using Object* pointer from another room.
From upstream 6ad4b220d75a32ea8df959e9a7b7f1ecb21d0c26
2023-09-02 13:23:59 +02:00
Walter Agazzi
cca0be77a1 AGS: Engine: a config hint to assume data version when reading a legacy save
I did a terribly stupid mistake when was expanding the old save format in the
past (in pre-3.5.0 engines). Instead of checking for the save format,
I've been checking for the game's data format.

This causes following problem: if a game made in a particular range of versions
(something like 3.2.1 to 3.4.4) gets upgraded to a newer version (say 3.6.0),
then all the old saves made in a pre-3.5.0 game version will not load correctly,
as they are relying on the new compiled game data format.

Unfortunately there's no *proper* way to fix this, as the old save format
had been in use for years, nothing can be done about it.
Hence the workaround that I may think of is to provide a config hint,
that would tell the engine: whenever you load a legacy save format,
assume that it was written by a game of particular data version.

From upstream 0a2a0177dd8eaad817b39905bf0471663c431f96
2023-09-02 13:23:59 +02:00
Walter Agazzi
40e79d9e20 AGS: Engine: in legacy read save functions take game data ver as an argument
From upstream 8e280225f2c73980034db6866696f40d7bb63ad8
2023-09-02 13:23:59 +02:00
Walter Agazzi
f5511afa82 AGS: Engine: also ignore special keys for skipping video and InventoryScreen
From upstream 7987e670fd58691de106f21d03c07fbc4094718c
2023-09-02 13:23:58 +02:00
Lothar Serra Mari
30b0194b6b I18N: Update translation (German)
Currently translated at 100.0% (1980 of 1980 strings)
2023-09-02 10:41:12 +00:00
ScummVM-Translations
4cd8e1d474 I18N: Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: ScummVM/scummvm
Translate-URL: https://translations.scummvm.org/projects/scummvm/scummvm/
2023-09-02 09:42:43 +00:00
Le Philousophe
3b4e8a4eea TEST: Add CxxTest ValueTraits for String
This allows pretty printing them when there is an assertion failure
2023-09-02 11:42:29 +02:00
Le Philousophe
154fab3952 TEST: Silence logs by default
Else tests on INI parser spam with expected warnings.
2023-09-02 11:42:29 +02:00
ScummVM-Translations
5e373fbffe I18N: Update translations templates 2023-09-02 09:33:09 +00:00
ScummVM-Translations
6957aa729d I18N: Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: ScummVM/scummvm
Translate-URL: https://translations.scummvm.org/projects/scummvm/scummvm/
2023-09-02 09:33:07 +00:00
AndywinXp
461009e823 SWORD1: Free palette resource only when actually using it 2023-09-02 11:32:51 +02:00
AndywinXp
7b8efd9845 SWORD1: Fix fade to cut palette 2023-09-02 11:32:51 +02:00
AndywinXp
e658ce8a16 SWORD1: Fix fade palette for Mac version 2023-09-02 11:32:51 +02:00
AndywinXp
67052e2ef5 SWORD1: Address other issues from code review 2023-09-02 11:32:51 +02:00
AndywinXp
dbe1a2df4f SWORD1: Make changes for code review 2023-09-02 11:32:51 +02:00
AndywinXp
f564ad8ea8 SWORD1: Fix unused var warning 2023-09-02 11:32:51 +02:00
AndywinXp
4ab197b16f SWORD1: Implement fades on the main menu
Had to reshuffle some stuff to make it work properly,
and in order to set up everything for future changes.
2023-09-02 11:32:51 +02:00