Commit Graph

130 Commits

Author SHA1 Message Date
Walter Agazzi
fc4bb91340 AGS: Preliminary implementation of ags_sprite_video plugin
Add stubs for the ags_spritevideo plugin, which is a
replacement for the old D3D plugin.
2023-06-03 22:53:26 +02:00
Walter Agazzi
d33d3e2536 AGS: Partial implementation of AGS_Collision_Detector plugin
This old plugin was used in Bear Story and a handful of other games
2023-05-14 23:05:39 +02:00
Walter Agazzi
751c79e6ff AGS: Add stubs for AGSTrans plugin
This plugin was used in Death Wore Endless Feathers
to draw semi transparent window backgrounds.
2023-04-29 13:42:23 +02:00
Walter Agazzi
4258a430b4 AGS: Engine: add plugin stub for agsappopenurl
Reimplemented from upstream f7cf17e279ad44e94fadf21b7922b35dd9134fa2
2023-04-29 13:11:41 +02: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
a2a5f2575d AGS: Reorganized few cc_ headers
From upstream ea1f8b9ece69fc7c49c4d3aa7b9af51c4ca736e5
2022-05-05 22:41:07 -07:00
Paul Gilbert
d3f9f299dd * Engine: moved unsupported scStartRecording, get rid of a h/cpp pair
From upstream 8e8e498776fec5392cbc6d6b4d36c83cce7cf4d0
2022-04-23 22:19:18 -07:00
Paul Gilbert
ea65fe3c69 AGS: Moved SpriteFile class to a separate code unit for convenience
From upstream 393ef2c24bbc835d8e7a7229d40f638a6f172304
2022-03-17 21:49:22 -07:00
Cameron Cawley
06cd9b6d16 AGS: Move the engine options into the engine plugin 2021-09-18 11:57:29 +02:00
Paul Gilbert
3370b6917c AGS: Revert AGSFlashlight to more closely match original
The plugin previously had a bunch of hacks since the
AGS engine was rendering the screen at 32-bits rather than
16-bits the original was designed for. But with more recent
engine changes, the screen is 16-bits again. So I was able
to revert the hacks and return to the original code
2021-08-07 19:11:52 -07:00
Paul Gilbert
47fe5901d5 AGS: Removed unused old code
From upstream 495c35538e8e3db878853833ca817217b9ca1b34
2021-07-31 14:34:11 -07:00
Paul Gilbert
e2320808ed AGS: Added AGSTouch plugin implementation 2021-07-23 22:07:27 -07:00
Paul Gilbert
f5afbc964d AGS: Implemented AGSWaves weather methods 2021-07-20 20:25:54 -07:00
Paul Gilbert
74be1d8fd7 AGS: Further fleshing out AGSWaves gfx methods 2021-07-20 20:25:53 -07:00
Paul Gilbert
d716cfa580 AGS: Beginnings of AGSWaves implementation 2021-07-18 18:44:10 -07:00
Paul Gilbert
8caed23e8b AGS: Refactoring the plugins for new instance scheme 2021-07-18 17:07:02 -07:00
Paul Gilbert
aa6df18ce1 AGS: Enabling registration of exposed plugin exports 2021-07-18 17:07:01 -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
75974c9d42 AGS: Added skeleton classes for other plugin interfaces 2021-07-17 15:52:11 -07:00
Paul Gilbert
9e7a459d38 AGS: In-progress shifting GlobalAPI to plugins/core/ 2021-07-16 19:48:14 -07:00
Paul Gilbert
c89b21b901 AGS: Shifting more classes to plugins/core/ 2021-07-16 19:48:14 -07:00
Paul Gilbert
9742dfb163 AGS: Shifting multiple classes to plugins/core/ 2021-07-16 19:48:14 -07:00
Paul Gilbert
83bf163365 AGS: Move script exports for DrawingSurface to a new plugins/core/ folder 2021-07-16 19:48:13 -07:00
Paul Gilbert
b4056b39b0 AGS: Skeleton AGSWave plugin 2021-07-11 14:06:26 -07:00
Paul Gilbert
38405b5e23 AGS: Creating AGSSock plugin 2021-06-15 18:37:59 -07:00
Paul Gilbert
881bae2f5a AGS: Added AGSClipboard plugin 2021-06-15 18:35:39 -07:00
Cameron Cawley
bffcb53a05 AGS: Remove unused HQ2X code 2021-06-14 22:19:53 +01:00
Thierry Crozat
0cf45fbc39 AGS: Fix some regressions with blender modes 2021-06-14 20:21:10 +01:00
Cameron Cawley
330d9a2b63
AGS: Remove duplicate object in module.mk 2021-06-14 16:14:37 +01:00
Paul Gilbert
7f6b7559be AGS: Picked out data extension read/write algorithm
From upstream f93f44c4e84cdf7814d11c56d2b8424a239982f4
2021-06-13 21:09:12 -07:00
Paul Gilbert
f913067750 AGS: Reimplemented Translation reading in Common, similar to Game and Room
From upstream cae33966338b24a0d2527bc0c537ac65fe39eddb
2021-06-13 21:09:11 -07:00
Paul Gilbert
fdca14a38d AGS: Replaced TreeMap with std::unordered_map for translations
From upstream 3a4603dccc175736dfc20daf3376819dfb2060e8
2021-06-13 21:09:11 -07:00
Paul Gilbert
1028fc40eb AGS: Split room_file.cpp to have generic read functions separate
From upstream 6bc0bc35afb1e6510cd70ddaead768ff1af643e8
2021-06-13 21:09:10 -07:00
Paul Gilbert
f982d82cc7 AGS: Added MemoryStream
Found upstream e3208df5afeed6cef118dc71a0af45cfce72f4d7
2021-06-13 21:09:01 -07:00
Paul Gilbert
ef64d0154c AGS: Remove deprecated mouse code 2021-06-13 21:08:55 -07:00
Paul Gilbert
98a9234253 AGS: Hooked in keyboard handling 2021-06-13 21:08:54 -07:00
Paul Gilbert
a4569cb180 AGS: Properly remove sound caching 2021-06-13 21:08:51 -07:00
Paul Gilbert
701396361c AGS: Import of fresh codebase 2021-06-13 21:08:44 -07:00
Annick Ecuyer
8c0c91fe94 AGS: Add ags_fire and ags_agi plugin stubs (AGS_Fire.dll + ags_agi.dll)
* AGS_Fire: Doesn't do anything, but allows games using plasma fire
   effects to load and run.

   All methods return 0

 * AGS_AGI: Allows games who use AGI lowres effects to load and run.

   Games using scaling mode 0 will be squashed on the screen, but others
   should be playable without the screen effect.
2021-06-11 18:54:48 -07:00
Thierry Crozat
c54bd2faf2 AGS: Implement pivot_sprite and rotate_sprite 2021-05-31 23:44:39 +01:00
Paul Gilbert
9dd5f7fea8 AGS: Implementing AGSController plugin 2021-04-17 21:25:06 -07:00
Paul Gilbert
f03469a075 AGS: Shivah Steam version updated to use custom WadjetEye Steam plugin 2021-04-05 18:51:02 -07:00
Thierry Crozat
7252e57947 AGS: Add stubb for ags_shell plugin
It is used by Gemini Rue, possibly to open a URL in the default
system browser.
2021-03-25 21:35:17 +00:00
kyandora
309632fe50 AGS: Plugin stubs for Nickenstien's NGFX Graphics Library 2021-03-15 18:42:07 -07:00
Thierry Crozat
8de62d8182 AGS: Add custom debug console commands
Currently two commands are supported, one to list the AGS
DebugManager group verbosity levels, and one to change
those. This allows to enable and disable debug output.
2021-03-15 00:56:01 +00:00
Paul Gilbert
3e3d4e9097 AGS: Move stand-alone methods from ags.cpp to their own file 2021-03-13 21:34:56 -08:00
Paul Gilbert
40a283def9 AGS: Rename Linux platform driver to ScummVMPlatformDriver 2021-03-13 11:13:48 -08:00
Paul Gilbert
80cb4183eb AGS: Move allegro error globals to Globals 2021-03-13 11:12:41 -08:00
Paul Gilbert
b807c94441 AGS: Move pluginobjectreader.cpp globals to Globals 2021-03-12 20:28:30 -08:00
Thierry Crozat
6c117d04dd AGS: Implement AGSSpriteFont plugin variant from Clifftop Games
This variant is used in the games from Clifftop Games, Kathy Rain
and Whispers of a Machine.

The changes are based on https://github.com/adventuregamestudio/ags/pull/834
The ags fork used for the Kathy Rain can be found at https://github.com/josthas/KrusAGS/
2021-03-06 21:21:22 +00:00