Commit Graph
19 Commits
Author SHA1 Message Date
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Paul Gilbert ae1814553f AGS: Implement PluginMethod class as proxy for calling script methods 2021-07-18 21:47:45 -07:00
Paul Gilbert 2b719124d3 AGS: Move separate state structure into AGSCreditz 2021-07-18 17:07:02 -07:00
Paul Gilbert 8caed23e8b AGS: Refactoring the plugins for new instance scheme 2021-07-18 17:07:02 -07:00
Paul Gilbert e543a32ec0 AGS: In progress converting plugin classes to be instance based
Previously the plugin system was obviously built around function
pointers, since a loaded plugin DLL would expose them statically.
This meant that the plugin classes I implemented also had to use
static methods, and all the variables had to be static as well.

This has been getting more and more annoying. So this commit is
an in-progress refactoring of AGS to allow for plugins to be
properly instance-based, and pointers to script methods will be
both a pointer to the plugin as well as the method name.
2021-07-18 17:07:01 -07:00
Paul Gilbert 701396361c AGS: Import of fresh codebase 2021-06-13 21:08:44 -07:00
Paul Gilbert f28a167a25 AGS: AGSCreditz compilation fix, deprecated code removal 2021-03-26 21:22:41 -07:00
Paul Gilbert 445f565589 AGS: Creditz plugin is partially showing credits 2021-03-26 20:47:23 -07:00
Paul Gilbert b73ca790ac AGS: Have AGSCreditz2 only do pollSystem calls when active 2021-03-14 17:06:00 -07:00
Paul Gilbert d8a6a0c527 AGS: AGS_EngineOnEvent for AgsCreditz2 2021-03-14 11:45:00 -07:00
Thierry Crozat 8491d62fa6 AGS: Fix access to bitmaps in plugins
In ScummVM bitmap data are stored linearly but plugins
were accessing those as array of arrays leading to
out of bound memory access.
2021-03-06 21:21:22 +00:00
Paul Gilbert 800adbacf5 AGS: Fix crash calling AGSCreditz plugin method
The latest change to try and properly handle NumberPtr results
from plugin methods broke the passed parameters on methods with
a void return. To solve this once and for all, I changed all
plugin methods to be a void return, and added a _results field
as part of the passed params parameter
2021-03-03 21:18:32 -08:00
Paul Gilbert b7886c4b4a AGS: Allow NumberPtr to handle const pointers 2021-02-25 19:38:19 -08:00
Paul Gilbert 844a94d72b AGS: Fix plugin methods to ScriptMethodParams array 2021-02-25 19:34:10 -08:00
Paul Gilbert cd017a73c7 AGS: Revert Standardization of number types
This reverts commit a96422af52.
2021-02-16 19:45:02 -08:00
Paul Gilbert a96422af52 AGS: Standardization of number types
This not only simplifies all the use of _t types to the
ScummVM equivalents, it gets rid of the int32 usage in
favor of just int, solving common type clashes with the
Amiga, for which int doesn't match int32
2021-02-13 11:38:55 -08:00
Le Philousophe 59ee9db798 AGS: Don't use int when int32 is expected
This breaks platforms where int32 is not int
2021-02-13 10:04:21 +01:00
Paul Gilbert 47c9414186 AGS: Implementing more of AGSCreditz2 2021-02-12 22:36:07 -08:00
Paul Gilbert 6ae29a802e AGS: Split up AGSCreditz versions into separate files 2021-02-07 19:47:37 -08:00