Commit Graph
137148 Commits
Author SHA1 Message Date
Eugene Sandulenko 3d115750b3 GUI: Fix type 2022-10-10 13:29:23 +02:00
Eugene Sandulenko 736a3f2faa I18N: Update translation (Ukrainian)
Currently translated at 100.0% (1768 of 1768 strings)
2022-10-10 11:28:55 +00:00
Marcel Souza Lemes 5a49fe8727 I18N: Update translation (Portuguese (Brazil))
Currently translated at 100.0% (1768 of 1768 strings)
2022-10-10 10:33:47 +00:00
ScummVM-Translations 6fa5eb23e2 I18N: Update translations templates 2022-10-10 10:06:29 +00:00
Eugene Sandulenko 78135f8dfa SCUMM: Improved workding for unknonw game variants message 2022-10-10 12:03:36 +02:00
Eugene Sandulenko 5b8b2bb25f DIRECTOR: Fix incorrect bitwise operation. CID 1490801 2022-10-10 12:03:36 +02:00
alxpnv 015565f4b9 NEWS: Mention another Sanitarium fix 2022-10-10 11:01:02 +03:00
D G Turner 0c2ae0357a AGS: Fix Signed vs. Unsigned GCC Compiler Warning 2022-10-10 08:40:27 +01:00
Daniel Abramowitz a03b25a61a AGI: Initial Implemention of AGI's log() Function
This log() function was previously unimplemented in ScummVM. Its
purpose is to write log messages and some metadata about the game state
to a file.

This functionality does not affect game play. Presumably Sierra used
this to beta test their games. They would log the words that their
testers used but the game did not understand. The testers would
then submit the log file back to Sierra. Sierra would add the missing
words or descriptions to their games before release.

This is the first diff of a couple which will incrementally add this
functionality. In this diff, we just collect the information we need to
generate a log message close to what AGI actually did.

There are two notable differences which will be fixed in future diffs:
(See the comments in the code for more details.)
1. No message formatting.
2. We log to the console only.

For context, I'm currently writing an AGI game and would like to
collect this output from my friends and family, which is why I'm
implementing this functionality today.
2022-10-10 08:22:16 +03:00
Thierry Crozat b13b408972 AGS: renamed IAGSFontRenderer2 to IAGSFontRendererInternal
From upstream 6fc7c295728bf4d6815596f12a8587c80dbe4a5e
2022-10-10 00:16:16 +01:00
Thierry Crozat 58212aeebd AGS: added render callback AGSE_POSTROOMDRAW
This render stage overlays the room with objects and characters, but
stays within room transform, therefore will work with non-standard
viewport positions and multiple cameras.
The next closest stage is AGSE_PREGUIDRAW, which is rendered outside
room viewport. The new one fills the missing stage, lacking after the
viewport/camera update in 3.5.0.

From upstream 4ff7e14400ab81693fb64195d9ada70e979647ac
2022-10-10 00:16:16 +01:00
Thierry Crozat c7f44082b8 AGS: more explicit code for the video flag parsing (PlayVideo/Flic)
This is just for easier to maintain / safer code.

From upstream ee2f91560969d22bd92a5e75af5a447937afb5c5
2022-10-10 00:16:16 +01:00
Thierry Crozat 6bae4af005 AGS: rename "multitasking" option to "background" and added cmd arg
From upstream cb83231c03764c74b8f8f09f8c876207a475f7b9
2022-10-10 00:16:16 +01:00
Thierry Crozat 2f8d4cb072 AGS: PlayVideo supports playing game and video sound together
From commit f2a9f3043aac24b0e70b48602a664541ec12df8d
2022-10-10 00:16:16 +01:00
Thierry Crozat 483ff1bc30 AGS: fixed object cache may sometimes keep an old dynsprite ref
This may result in object texture not updating if the old sprite was deleted but a new dynamic sprite was created right after having same ID.

Was broken by upstream 9dffb04 in 3.5.1, and also some later changes in 3.6.0.

From upstream 7ed51861898d864902b0f61b0cb7d0acadef1fe3
2022-10-10 00:16:16 +01:00
Thierry Crozat 6163d4880a AGS: fixed CompatKey may be "none" in some cases for valid key press
From upstream f0e699392866b1b737a6b5be08790cbddbc6767d
2022-10-10 00:16:16 +01:00
Thierry Crozat a06124e572 AGS: Updated build version (3.6.0.31)
From upstream ecaf7c59bb5cf7901d1429f2145954c665c85629
2022-10-10 00:16:16 +01:00
Thierry Crozat 9f24f6eda4 AGS: fixed ags_misbuttondown()
Complementing afdccb3d3 (upstream 471098d)

From upstream f6e23781c4895ab79b42f97324743356aa401eec
2022-10-10 00:16:16 +01:00
Thierry Crozat bcb854370d AGS: key plugin callback and game. vars must use "CompatKey"
From upstream 555a3060491523d2c236f0bbb77b981eab2d4359
2022-10-10 00:16:16 +01:00
Thierry Crozat 0927821afd AGS: small refactor of key code variables (stricter names, types)
From upstream e04c8ff1fe77e4462babd21d2a103a12e68b4b84
2022-10-10 00:16:16 +01:00
Thierry Crozat e2497cff42 AGS: include KeyMods flags in the WaitSkipResult
From upstream 65bfbb9bde733457b8ab958bb3cd273f7fadcb25
2022-10-10 00:16:16 +01:00
Thierry Crozat 250e32f9a1 AGS: adjusted InputType and KeyMod for easier packing in int32
This allows to fully pack InputType, KeyMod and KeyCode/MouseButton/etc in a int32:

- 8 bits (0xFF) - input type
- 8 bits (0xFF) - key mod flags
- 4 bits (0xF) - reserved (potentially for expanding mod flags, if that will be necessary)
- 12 bits (0xFFF) - KeyCode, mouse codes, gamepad buttons, etc.

Purpose:
1. Potentially allow to set keycodes + mods in an integer and assign to an integer variable/property, such as "skip key", instead of using existing "combo keys"
2. In fact, with InputType flags, this makes it possible to assign a mouse or gamepad button to the same variables.
3. Potentially allow to return keycode + mods from Wait* (currently returns only single key).

From upstream 0203e8feb73b96c501ac2439aa3fe3d6c182c8f4
2022-10-10 00:16:16 +01:00
Thierry Crozat 5987bc5e6e AGS: rewrote eAGSMouseButton enum to sync with the script API
* Changed from -1 - based constants to 0 - based constants;
* These were purely internal values, therefore no API would be harmed;
* Removed necessity of converting from internal mouse button code to script and back all the time;
* On a side note, this fixes a bug where WaitMouse etc were returning incorrect values on mouse skip, because we forgot to convert from internal to script code.

From upstream 471098d239b076c494beb2d554572ccb69372667
2022-10-10 00:16:16 +01:00
Thierry Crozat 06620b6e9f AGS: renamed Button's MouseButton enum to avoid name confusion
Was conflicting with the internal engine's eAGSMouseButton constants.

From upstream a5cfccee2d3681b55dafb8cfb9e0f38f84124855
2022-10-10 00:16:16 +01:00
AndywinXp 474ccf041a SCUMM: DiMUSE: Clarify and document IMuseDigital::tracksLipSync() 2022-10-10 00:46:05 +02:00
ScummVM-Translations 537814408d 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/
2022-10-09 22:23:28 +00:00
Eugene Sandulenko cb406dd95b SCUMM: Comment out unused class variable 2022-10-10 00:22:57 +02:00
Eugene Sandulenko 80e772ad3b SCUMM: Add missing override keyword 2022-10-10 00:22:40 +02:00
ScummVM-Translations 32110a9874 I18N: Update translations templates 2022-10-09 22:17:56 +00:00
Eugene Sandulenko 8a75067db5 GUI: Fix behaviour when switching OpenGL -> SDL Surface 2022-10-10 00:15:00 +02:00
Eugene Sandulenko 17841ca8a2 GUI: Fix crash on switch SDL Surface -> OpenGL 2022-10-10 00:15:00 +02:00
Daniel Abramowitz 1273fb34de JANITORIAL: Adjust comment: SaveFileMAnager -> SaveFileManager 2022-10-09 23:40:49 +03:00
Thierry Crozat 3e194453fa AGS: Updated build version (3.6.0.30)
From upstream 836a6bd1fb4f642272ed99eccae68eab33fa1ab8
2022-10-09 19:40:04 +01:00
Thierry Crozat 56f9bfba9e AGS: fixed GUISlider::IsOverControl() comparing abs with rel coords
Was broken likely by dec832ad4 (upstream 9394a2d)

From upstream 77c10eb3757029d8d185d9b161890d05203d90af
2022-10-09 19:36:47 +01:00
Thierry Crozat dd9595c8ce AGS: don't zero slider's HandleImage internally if sprite is missing
This may lead to unexpected effects when resources are not fully preloaded yet, but a Slider's "UpdateMetrics" was called.

From upstream 5654fb52a64904a6b0cdcec674224f7a0d91a8eb
2022-10-09 19:29:11 +01:00
Thierry Crozat eb252cf824 AGS: fixed case when imported sprite got flags from placeholder
This could make a new sprite look differently, depending on placeholder's (sprite 0) settings, until the game is saved once.

From upstream f2a922a9cefd40337502bde734503605a76550db
2022-10-09 19:23:13 +01:00
Thierry Crozat 9ced7b370c AGS: fixed GUIListBox drawing double border outside of the clip
From upstream 0cece949e68d4fe55c6943654643abdc3bbb40d4
2022-10-09 19:16:26 +01:00
Thierry Crozat fa87b3f28f AGS: force update gui metrics on load and on game start
This fixes some controls not reporting their metrics correctly until first displayed on screen.

From upstream ea4e6762236a13621ba0771b9d5d8ac4bcf33ee8
2022-10-09 19:12:22 +01:00
Thierry Crozat 6f512bb2af AGS: Removed some redundant/obsolete comments
From upstream a7bd24cd4822bdcabef061197c98d1224200aa2a
2022-10-09 18:56:36 +01:00
Thierry Crozat 61e3a92963 AGS: fixed few more warnings related to typecasts
From upstream 7946be9e75a0edda6fc9d955ea771f60f9b8e968
2022-10-09 18:49:17 +01:00
Thierry Crozat c1bfa68725 AGS: removed redundant global variable numBreakpoints
From upstream 5cb25832b1da27049fc3531f00aeb5727b98fc38
2022-10-09 18:45:15 +01:00
Thierry Crozat 5fd47e4055 AGS: define verbose sprite cache log through a macro function
From upstream a3e762c55b9424ebfc3f311b57ac30a8bcedf945
2022-10-09 18:34:44 +01:00
Thierry Crozat 7f6d7f41d4 AGS: use #if instead of #ifdef for log macros
Sprite Cache and Managed Objects produce a lot of entries in the log currently.
They use a macro to set if they should be on or not, but this macro may be set =0, with the intent of disabling.
Let's instead use #if when testing these macros.

Additionally

- only define DEBUG_MANAGED_OBJECTS if AGS_DEBUG_MANAGED_OBJECTS is true
- adds a new command line flag AGS_DEBUG_SPRITECACHE, which will only define DEBUG_SPRITECACHE if true
- guard indefinition through core/platform.h

From upstream e8bd58da2e09d844068dc087f1da153a693b7aa8
2022-10-09 18:11:02 +01:00
Thierry Crozat 151d391188 AGS: Updated build version (3.6.0.29)
From upstream 13ccc39f2027c9fcf07308440981221629b67b75
2022-10-09 18:01:55 +01:00
Thierry Crozat 026d1e83ac AGS: don't start sound fadeout if skipping a cutscene
From upstream d742c415a898e9c52875098f3f40ecffa57b22ee
2022-10-09 17:58:53 +01:00
Le Philousophe 884c3aa795 OPENGL: Use the correct index when attribute is added after link 2022-10-09 18:30:29 +02:00
Le Philousophe 3c8b58af95 BACKENDS: OPENGL: Don't use glGetTexLevelParameteriv
This function doesn't work in GLES2
2022-10-09 17:25:35 +02:00
Le Philousophe 3a7f2aa1ee BACKENDS: OPENGL: Allow callers to check for texture setSize result 2022-10-09 17:25:35 +02:00
Le Philousophe a205c79a98 OPENGL: Allow to get last call error status 2022-10-09 17:25:35 +02:00
sluicebox 6d2c4222b3 SCI32: Fix LIGHTHOUSE stuttering sounds
Works around script bugs in the original game that often accidentally
worked because of the time it took the original interpreter to load and
begin playing a sound.

Fixes bugs #10224, #10231, #10232, #10237, #10238
2022-10-09 11:23:05 -04:00