Hubert Maier
76210767fa
JANITORIAL: AGS: Fix typos
2024-12-25 17:08:44 +02:00
Walter Agazzi
815041ec6a
AGS: Engine: store game's ccInstances as unique_ptrs instead
...
The script handling part of the engine appeared to be too fragile and dependent on
a precise timing of **deleting** a ccInstance.
For example, restoring a saved game may execute in the midst of the call to
RunScriptFunction(), at the "post script cleanup" stage, while there are still references
to ccInstance on the engine's call stack (and few other places). If anything prevents
ccInstance's disposal at this moment, that would in turn lead to logical errors due to
the game scripts "instances" counting. The most outstanding consequence is that the
script exports are kept pointing into the deleted memory and not re-registered after the save is restored.
Overall, the script handling part of the engine would benefit from a major refactor,
with a goal to make it safe and consistent, but this is not something I might do at the moment.
From upstream 1f6abf4b678f77825c710d4ae18b57ff8f882c93
2024-10-30 18:07:42 +02:00
Walter Agazzi
09ffee9ed7
AGS: Engine: store ccInstances in shared_ptr, tidy freeing of instances (take two)
...
After the updates to cc_instance this should now work
From upstream b1e4f75141ce88b3146f55ecd9d7a95378428072
and 49e8aa0b566dea4ce025f9530a9f2392dbe67a33
2024-10-30 18:07:42 +02:00
Walter Agazzi
720b7a53ec
AGS: Engine: object interaction events take obj pointer and mode as params
...
Partially from upstream 1897504aa30fda5f7d5cc9d9538cb49944c70151
2024-10-30 18:07:42 +02:00
Walter Agazzi
51cf1f1568
AGS: Engine: tidied code in RunObjectInteraction functions
...
From upstream c20764239b3a8a234c473feb4f7009afdc3c4c6d
2024-10-30 18:07:42 +02:00
Walter Agazzi
dd8c13c1f0
AGS: Engine: replaced global evblock* vars with a local ObjectEvent argument
...
From upstream 279d3d78ff04423fce137a4907fd42d44ee12969
2024-10-30 18:07:42 +02:00
Walter Agazzi
8153a59121
Revert "AGS: Engine: store ccInstances in shared_ptr, tidy freeing of instances"
...
This reverts commit 016323f1f9797827a36a77ae3a5859b56d3b0998.
2024-10-30 18:07:42 +02:00
Walter Agazzi
253187f4e2
Revert "AGS: Engine: store game's ccInstances as unique_ptrs instead"
...
This reverts commit 547cd40186876f17914f6a96261aaf5c4dfc21b4.
2024-10-30 18:07:42 +02:00
Walter Agazzi
b1e7617964
AGS: Engine: store game's ccInstances as unique_ptrs instead
...
From upstream 1f6abf4b678f77825c710d4ae18b57ff8f882c93
2024-10-30 18:07:42 +02:00
Walter Agazzi
4019f9305b
AGS: Engine: store ccInstances in shared_ptr, tidy freeing of instances
...
From upstream b1e4f75141ce88b3146f55ecd9d7a95378428072
and 49e8aa0b566dea4ce025f9530a9f2392dbe67a33
2024-10-30 18:07:42 +02:00
Paul Gilbert
c2a476411c
AGS: Move std namespace into common/std/
2024-07-07 15:28:31 -07:00
Thierry Crozat
7d88a52275
AGS: Engine: fixed restoring a legacy savegame
...
From upstream 9776df3c8403f252e981f5518c48eace2e83d373
2022-12-15 22:40:17 +01:00
Paul Gilbert
faa858a55b
AGS: Fixed sending non-error messages to debugger
...
From upstream 3b43353986ca91ecad9c5270e362c8716effaf37
2022-05-05 22:41:07 -07:00
Paul Gilbert
480be2134b
AGS: Added script instance thread stack, replacing current_instance
...
From upstream f3443cb7a4ae5858e5d2d28131aaf6cf138bc0ec
2022-05-05 22:41:06 -07:00
Paul Gilbert
a6f42ad1ab
AGS: Fixing various "unused va/arg" warnings + removed empty funcs
...
From upstream 61771ecd638338806c40d0da2bf1addea06cac90
2022-04-25 21:44:40 -07:00
Paul Gilbert
b2d8bcad75
AGS: Refactor RunTextScript* functions for the purpose of clarity
...
From upstream 17af6ca2cb1fba310900f5189da788fa52ef7dab
2022-04-18 19:10:39 -07:00
Paul Gilbert
2e24e08d5b
AGS: Brought few "run script" functions to similar arg list
...
From upstream 78163a07400353013dd939ca86f5513f3196394a
2022-04-18 19:10:39 -07:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+
2021-12-26 18:48:43 +01:00
Paul Gilbert
701396361c
AGS: Import of fresh codebase
2021-06-13 21:08:44 -07:00
Paul Gilbert
b6dd902163
AGS: Move script.cpp globals into Globals
2021-02-28 16:41:48 -08:00
Paul Gilbert
69b6cfab29
AGS: Move std/ folder into lib/
2021-02-06 16:37:31 -08:00
Paul Gilbert
9a78e04039
AGS: Beginnings of engine/ inclusion
2021-02-06 16:37:31 -08:00
Paul Gilbert
d8e471b03c
AGS: Changing Common namespace to Shared
2021-02-06 16:37:31 -08:00
Paul Gilbert
76a2e90366
AGS: Wrapping headers in an AGS3 namespace
2021-02-06 16:37:31 -08:00
dreammaster
8026e4bb30
AGS: Run astyle formatting
2021-02-06 16:37:31 -08:00
Paul Gilbert
90ec822f76
AGS: Cleaning up header file guard defines
2021-02-06 16:37:31 -08:00
Paul Gilbert
bd6a58d1a1
AGS: Adding ScummVM comment headers
2021-02-06 16:37:31 -08:00
Paul Gilbert
a60d290a08
AGS: Initial addition of engine/ and shared/ folders
2021-02-06 16:37:31 -08:00