Commit Graph
254 Commits
Author SHA1 Message Date
Thierry Crozat 6c18c2d5b5 AGS: Engine: support Clifftop Games custom engine's resolution mod
From upstream 6a238e9cb4acda222898dd4b597cf20581b401f6

This replaces a slightly different fix we had in ScummVM. But this new
code works better and fixes bug #12949
2022-12-15 22:40:17 +01:00
Thierry Crozat 887f156f73 AGS: Engine: OpenGL, Software drivers also try 24bit display modes for 32bit
This is mostly a cosmetic fix, as graphic mode was created successfully anyway.
But the engine was incorrectly reporting no suitable modes available.

From upstream 4399d6448c579c648fe7e0c157a6d5f1adc74a6c
2022-12-15 22:40:17 +01:00
Hubert Maier 1d8c47257a JANITORIAL: AGS: Correct Spelling Mistake
alot -> a lot
2022-11-15 22:52:43 +02:00
Le Philousophe ab0854d81a AGS: Don't use unsafe sprintf and vsprintf 2022-10-23 22:46:19 +02:00
Le Philousophe 7f90669bdd AGS: Don't use unsafe strcat and strcpy 2022-10-23 22:46:19 +02: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 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 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 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 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 119e09e56e AGS: Removed a too early call to pl_stop_plugins() and fixed another
There's one call in unload_game_file(), which should be called after
all objects that may have been provided by plugins are disposed
(fonts, managed objects).

From upstream 462cabe7353fc75f3cf70222a97028066f12f030
2022-06-24 20:54:47 +01:00
Thierry Crozat 7372aa4040 AGS: Updated build version (3.6.0.28)
From upstream ad7c27a8bbf8a9e827ebd052472887cf4f47a299
2022-06-23 23:57:27 +01:00
Thierry Crozat aa9983c28d AGS: Update commented out exception handling code
This code is not used in ScummVM, but since it was still there in
comments it's probably better to keep it in sync with upstream.
The code was updated in upstream 0d1034df1a0e6593e7e61bbdb75d2996b8721b14
(tidy Direct3D renderer code, remove redundant parts, etc)
and 2f04e3b81db598eb7950668ce9d88a145f796f2c
(fixed Ali3DException's message string misuse)
2022-06-23 23:57:27 +01:00
Thierry Crozat 29505204c1 AGS: Turned want_exit and abort_engine vars from int to bool
From upstream e924778ce3f88a4c821a4eecfea8edc353a6807b

In ScummVM they were already bools, but where still assigned values
of 0 and 1 instead of false and true in some places.
2022-06-23 23:57:27 +01:00
Thierry Crozat 3a4d94bf0b AGS: Updated Multitasking setting
* Added `[misc] multitasking=[0,1]` to config, acting as a *starting*
  setting, which may be changed by runtime call to `SetMultitaskingMode`;
* Ensure multitasking mode is overridden by connected external debugger
  (always on, if possible);
* Let multitasking mode work in "fullscreen desktop" gfx mode (still
  disabled in exclusive fullscreen);
* Now correctly reset multitasking mode if gfx mode changes.

From upstream 9f091926e393f75c90c951f9597710bf17395332
2022-06-23 23:57:27 +01:00
Thierry Crozat dd9df96e74 AGS: Tidied code around debugger init a tiny bit, added log
From upstream 408f139d86b5d812fe3674901cadae6ae6573036
2022-06-23 23:57:26 +01:00
Thierry Crozat 8b8a7fffbf AGS: Tidied code around GameSetup a tiny bit
From upstream 850ae917fe7477dd83cc905cdb48982ef107877c
2022-06-23 23:57:26 +01:00
Thierry Crozat 305fdb853a AGS: Abort current scripts on close window event
This helps kill "hanging" scripts if user closed the window while
there's no real engine update.

From upstream a758fd6de2dccd0c948fc7f9e5b65200df902a65
2022-06-23 23:57:26 +01:00
Thierry Crozat 76aebcd336 AGS: Tidy the quit message code and add comments
From upstream 3b4d21ab7025d4b66e7351639073f6d62e44f277
2022-06-21 23:28:01 +01:00
Thierry Crozat 4e9e0fcf15 AGS: Fixed parsing of legacy "game_scale_win" from 3.5.* config
From upstream 0e592f18546d3d65e2cf7822a4f7063278beef06
2022-06-21 23:28:01 +01:00
Thierry Crozat fe80834639 AGS: Store DialogTopics in std::vector
From upstream 2609c0d1ee43a4f997021ce48ca2a4f70ca1a6c7
2022-06-20 23:52:25 +01:00
Thierry Crozat e90fb00412 AGS: Replaced more strcpy with snprintf, for safety
From upstream 1b6cf053ebbe85e7ba6c5828e2582d757503bc16
2022-06-19 20:50:24 +01:00
Thierry Crozat 282ee9ad97 AGS: Fixing more trivial warnings
From upstream 83f7d9857e70f7d1d10fedf61196740d20ba0b0a
2022-06-18 01:08:54 +01:00
Thierry Crozat d6d464f898 AGS: Fixed sprite cache limit was reset on sprite file open
From upstream 4f57730e2b3d41af4fd0300e8b092d31d448f544
2022-06-16 23:16:20 +01:00
Thierry Crozat 5d8c66c511 AGS: Implemented debug keys for saving/restoring a game
This may be useful in case the game does not provide any save system, or one is broken.
From upstream 86130ec92f6966cfa2d5565c749ba839acad8136
2022-06-16 23:16:20 +01:00
Thierry Crozat 703372b161 AGS: Fix regression with GUI translation option not working 2022-06-06 22:42:36 +01:00
Paul Gilbert 1933841f79 AGS: Removed numgui* variables, use size of vectors instead
From upstream 095cf9d77c96fb3a1f9e887d7aaa1ef1e92ebe60
2022-05-10 21:35:19 -07:00
Paul Gilbert 3ac6998a98 AGS: Support Overlays not copying the image, but storing a sprite id
From upstream fd14bd4075bd9e6a577235f2434275b260250c46
2022-05-08 11:37:49 -07:00
Paul Gilbert cf091f2d3e AGS: Replaced couple of variables in ScreenOverlay with flags
From upstream 38a4e8c262f0ec796225494fc939b283680caf57
2022-05-06 20:16:41 -07:00
Paul Gilbert d2547418c0 AGS: Added show_fps to config
From upstream 2d6e0fca6bd310822e4f82ed95eb2bb5c116ac65
2022-05-05 22:59:51 -07:00
Paul Gilbert 02bc813aa2 AGS: Simplified config setting in process_cmdline a little
From upstream 54f2b45744e13f95e45afcd5b9c0e6336747ec0c
2022-05-05 22:53:13 -07:00
Paul Gilbert d385968209 AGS: Tidy up mobile config once more and get rid of psp_* variables
From upstream 4ba8fbed2f16786e86f201f57fdaaa91cc887700
2022-05-05 22:41:10 -07:00
Paul Gilbert b1649597d7 AGS: Replaced Math/std Min/Max with ScummVM macros
Inspired by 6dee5ee6f271c600e30879d892295ea6069e8cc9
2022-05-05 22:41:10 -07:00
Paul Gilbert 97c12e8435 AGS: Merged Character and ObjectCache structs, and hid in draw.cpp
From upstream 753d47d975b10666702c47a22cbc4e68847787f1
2022-05-05 22:41:09 -07:00
Paul Gilbert 6482e38803 AGS: CharacterExtras and MoveLists are stored in std::vector
From upstream 0c81cfefb788c0dcfdb2cad914f939f28110edca
2022-05-05 22:41:08 -07:00
Paul Gilbert 8e132f7b3f AGS: cc_error returns stack from all script threads
From upstream 9e76800d668d8d0af7d47d815e6d1b781c7601f6
2022-05-05 22:41:07 -07:00
Paul Gilbert 16d0d89787 AGS: Grouped ccError variables in a struct
From upstream 48ef387226e4d420dc62d0a0b204cf4cd89a1139
2022-05-05 22:41:07 -07:00
Paul Gilbert a2a5f2575d AGS: Reorganized few cc_ headers
From upstream ea1f8b9ece69fc7c49c4d3aa7b9af51c4ca736e5
2022-05-05 22:41:07 -07:00
Paul Gilbert cfefb80461 AGS: Moved font renderer shutdown after the game data disposal
From upstream 0914030ff28647262e53d611f8de8e9b5f3aca16
2022-05-05 22:41:06 -07:00
Paul Gilbert 8e4254b839 AGS: Refactored walk-behinds calculation and texture generation
From upstream ac0c4cea6a6e41238fe74f0753fa6a458f05d954
2022-05-05 22:41:05 -07:00
Paul Gilbert ebe2096af7 AGS: Call unload_game_file() in quit()
From upstream 1118be9d3f09037b995554d7aad47a400a76fafc
2022-05-01 17:23:26 -07:00
Paul Gilbert b2d5b6e586 AGS: Implemented Overlay.Width & Height working as scaling
From upstream 3a27e81a710a1c3de4b745d84dca39554dc64385
2022-05-01 17:23:24 -07:00
Paul Gilbert 8d588c3a30 AGS: Fixed on_key_press not called all times
From upstream ffb73a0a7488e16b26c969b7efb3ca035f7dcea4
2022-04-29 22:20:39 -07:00
Paul Gilbert 21ab95f5ab AGS: Remove RegisterGameWithGameExplorer()
From upstream 1554207f04dc6999994d02956587b302bb56f858
2022-04-29 22:20:39 -07:00
Paul Gilbert 0490236774 AGS: Use old-style keycodes for internal engine commands
From upstream e2f8b0f2357d2587016425ff6629ef37601d8e0f
2022-04-29 22:20:38 -07:00
Paul Gilbert 68e5184afa AGS: Replaced some (v)sprintfs with sNprintf counterparts
From upstream a34bd392249f87a152dc470d90c67a7d193a28d8
2022-04-27 20:51:30 -07:00
Paul Gilbert 23a2e8c709 AGS: More config parse helpers: reading boolean ints, min-max range
From upstream 9737cabb8e7562122f8c471793bd994685d72bfe
2022-04-27 20:38:38 -07:00
Paul Gilbert 7b0bfee7cc AGS: Renamed and moved INIread/write functions for proper org&style
From upstream 18398a7d695e81575218380e1bba28010c239fdc
2022-04-27 20:25:31 -07:00