[Scummvm-git-logs] scummvm master -> ecbda750a357d4bc279eb23fac1b77d38d5cf15e
dreammaster
dreammaster at scummvm.org
Mon Jul 19 00:08:27 UTC 2021
This automated email contains information about 7 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
e543a32ec0 AGS: In progress converting plugin classes to be instance based
aa6df18ce1 AGS: Enabling registration of exposed plugin exports
8caed23e8b AGS: Refactoring the plugins for new instance scheme
2b719124d3 AGS: Move separate state structure into AGSCreditz
fdb9d8e43e AGS: Properly handle plugin execMethod for derived plugin classes
14b53d9a9e AGS: Moved plugins globals into Globals
ecbda750a3 AGS: Fix loading plugins
Commit: e543a32ec0562db5038bdea33bf06f8710386644
https://github.com/scummvm/scummvm/commit/e543a32ec0562db5038bdea33bf06f8710386644
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2021-07-18T17:07:01-07:00
Commit Message:
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.
Changed paths:
engines/ags/engine/script/cc_instance.cpp
engines/ags/engine/script/runtime_script_value.h
engines/ags/engine/script/script_runtime.cpp
engines/ags/engine/script/script_runtime.h
engines/ags/engine/util/library.h
engines/ags/engine/util/library_scummvm.h
engines/ags/module.mk
engines/ags/plugins/ags_agi/ags_agi.cpp
engines/ags/plugins/ags_agi/ags_agi.h
engines/ags/plugins/ags_blend/ags_blend.cpp
engines/ags/plugins/ags_blend/ags_blend.h
engines/ags/plugins/ags_clipboard/ags_clipboard.h
engines/ags/plugins/ags_controller/ags_controller.h
engines/ags/plugins/ags_creditz/ags_creditz.cpp
engines/ags/plugins/ags_creditz/ags_creditz.h
engines/ags/plugins/ags_creditz/ags_creditz1.cpp
engines/ags/plugins/ags_creditz/ags_creditz1.h
engines/ags/plugins/ags_creditz/ags_creditz2.cpp
engines/ags/plugins/ags_creditz/ags_creditz2.h
engines/ags/plugins/ags_creditz/drawing.h
engines/ags/plugins/ags_fire/ags_fire.h
engines/ags/plugins/ags_flashlight/ags_flashlight.h
engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.h
engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.h
engines/ags/plugins/ags_joy/ags_joy.h
engines/ags/plugins/ags_nickenstien_gfx/ags_nickenstien_gfx.h
engines/ags/plugins/ags_pal_render/ags_pal_render.h
engines/ags/plugins/ags_pal_render/pal_render.h
engines/ags/plugins/ags_parallax/ags_parallax.h
engines/ags/plugins/ags_plugin.cpp
engines/ags/plugins/ags_plugin.h
engines/ags/plugins/ags_shell/ags_shell.h
engines/ags/plugins/ags_snow_rain/ags_snow_rain.h
engines/ags/plugins/ags_sock/ags_sock.h
engines/ags/plugins/ags_sprite_font/ags_sprite_font.h
engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.h
engines/ags/plugins/ags_tcp_ip/ags_tcp_ip.h
engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.h
engines/ags/plugins/ags_waves/ags_waves.h
engines/ags/plugins/core/audio_channel.cpp
engines/ags/plugins/core/audio_channel.h
engines/ags/plugins/core/audio_clip.cpp
engines/ags/plugins/core/audio_clip.h
engines/ags/plugins/core/button.cpp
engines/ags/plugins/core/button.h
engines/ags/plugins/core/character.cpp
engines/ags/plugins/core/character.h
engines/ags/plugins/core/date_time.cpp
engines/ags/plugins/core/date_time.h
engines/ags/plugins/core/dialog.cpp
engines/ags/plugins/core/dialog.h
engines/ags/plugins/core/dialog_options_rendering_info.cpp
engines/ags/plugins/core/dialog_options_rendering_info.h
engines/ags/plugins/core/drawing_surface.cpp
engines/ags/plugins/core/drawing_surface.h
engines/ags/plugins/core/dynamic_sprite.cpp
engines/ags/plugins/core/dynamic_sprite.h
engines/ags/plugins/core/file.cpp
engines/ags/plugins/core/file.h
engines/ags/plugins/core/game.cpp
engines/ags/plugins/core/game.h
engines/ags/plugins/core/global_api.cpp
engines/ags/plugins/core/global_api.h
engines/ags/plugins/core/gui.cpp
engines/ags/plugins/core/gui.h
engines/ags/plugins/core/gui_control.cpp
engines/ags/plugins/core/gui_control.h
engines/ags/plugins/core/hotspot.cpp
engines/ags/plugins/core/hotspot.h
engines/ags/plugins/core/inv_window.cpp
engines/ags/plugins/core/inv_window.h
engines/ags/plugins/core/inventory_item.cpp
engines/ags/plugins/core/inventory_item.h
engines/ags/plugins/core/label.cpp
engines/ags/plugins/core/label.h
engines/ags/plugins/core/listbox.cpp
engines/ags/plugins/core/listbox.h
engines/ags/plugins/core/math.cpp
engines/ags/plugins/core/math.h
engines/ags/plugins/core/mouse.cpp
engines/ags/plugins/core/mouse.h
engines/ags/plugins/core/object.cpp
engines/ags/plugins/core/object.h
engines/ags/plugins/core/overlay.cpp
engines/ags/plugins/core/overlay.h
engines/ags/plugins/core/parser.cpp
engines/ags/plugins/core/parser.h
engines/ags/plugins/core/region.cpp
engines/ags/plugins/core/region.h
engines/ags/plugins/core/room.cpp
engines/ags/plugins/core/room.h
engines/ags/plugins/core/slider.cpp
engines/ags/plugins/core/slider.h
engines/ags/plugins/core/string.cpp
engines/ags/plugins/core/string.h
engines/ags/plugins/core/system.cpp
engines/ags/plugins/core/system.h
engines/ags/plugins/core/textbox.cpp
engines/ags/plugins/core/textbox.h
engines/ags/plugins/core/view_frame.cpp
engines/ags/plugins/core/view_frame.h
engines/ags/plugins/plugin_base.cpp
engines/ags/plugins/plugin_base.h
diff --git a/engines/ags/engine/script/cc_instance.cpp b/engines/ags/engine/script/cc_instance.cpp
index 29ef35b16c..1eac5ae7f4 100644
--- a/engines/ags/engine/script/cc_instance.cpp
+++ b/engines/ags/engine/script/cc_instance.cpp
@@ -989,9 +989,11 @@ int ccInstance::Run(int32_t curpc) {
if (next_call_needs_object) {
RuntimeScriptValue obj_rval = registers[SREG_OP];
obj_rval.DirectPtrObj();
- int_ret_val = call_function((intptr_t)reg1.Ptr, &obj_rval, num_args_to_func, func_callstack.GetHead() + 1);
+ int_ret_val = call_function((Plugins::ScriptContainer *)reg1.Ptr, reg1.methodName,
+ &obj_rval, num_args_to_func, func_callstack.GetHead() + 1);
} else {
- int_ret_val = call_function((intptr_t)reg1.Ptr, nullptr, num_args_to_func, func_callstack.GetHead() + 1);
+ int_ret_val = call_function((Plugins::ScriptContainer *)reg1.Ptr, reg1.methodName,
+ nullptr, num_args_to_func, func_callstack.GetHead() + 1);
}
if (_GP(GlobalReturnValue).IsValid()) {
diff --git a/engines/ags/engine/script/runtime_script_value.h b/engines/ags/engine/script/runtime_script_value.h
index cf9ba4d05d..cd0301973e 100644
--- a/engines/ags/engine/script/runtime_script_value.h
+++ b/engines/ags/engine/script/runtime_script_value.h
@@ -32,6 +32,7 @@
#include "ags/engine/script/script_api.h"
#include "ags/shared/util/memory.h"
#include "ags/engine/ac/dynobj/cc_dynamic_object.h"
+#include "ags/plugins/plugin_base.h"
namespace AGS3 {
@@ -81,6 +82,7 @@ public:
}
ScriptValueType Type;
+ Common::String methodName;
// The 32-bit value used for integer/float math and for storing
// variable/element offset relative to object (and array) address
union {
@@ -253,11 +255,12 @@ public:
Size = 4;
return *this;
}
- inline RuntimeScriptValue &SetPluginFunction(void *pfn) {
+ inline RuntimeScriptValue &SetPluginMethod(Plugins::ScriptContainer *sc, const Common::String &method) {
Type = kScValPluginFunction;
- IValue = 0;
- Ptr = (char *)pfn;
+ methodName = method;
+ Ptr = (char *)sc;
MgrPtr = nullptr;
+ IValue = 0;
Size = 4;
return *this;
}
diff --git a/engines/ags/engine/script/script_runtime.cpp b/engines/ags/engine/script/script_runtime.cpp
index fe9ead95c7..27f60814d2 100644
--- a/engines/ags/engine/script/script_runtime.cpp
+++ b/engines/ags/engine/script/script_runtime.cpp
@@ -53,8 +53,8 @@ bool ccAddExternalStaticFunction(const String &name, ScriptAPIFunction *pfn) {
return _GP(simp).add(name, RuntimeScriptValue().SetStaticFunction(pfn), nullptr) == 0;
}
-bool ccAddExternalPluginFunction(const String &name, void *pfn) {
- return _GP(simp).add(name, RuntimeScriptValue().SetPluginFunction(pfn), nullptr) == 0;
+bool ccAddExternalPluginFunction(const String &name, Plugins::ScriptContainer *instance) {
+ return _GP(simp).add(name, RuntimeScriptValue().SetPluginMethod(instance, name), nullptr) == 0;
}
bool ccAddExternalStaticObject(const String &name, void *ptr, ICCStaticObject *manager) {
@@ -98,8 +98,8 @@ void *ccGetSymbolAddress(const String &name) {
return nullptr;
}
-bool ccAddExternalFunctionForPlugin(const String &name, void *pfn) {
- return _GP(simp_for_plugin).add(name, RuntimeScriptValue().SetPluginFunction(pfn), nullptr) == 0;
+bool ccAddExternalFunctionForPlugin(const String &name, Plugins::ScriptContainer *sc) {
+ return _GP(simp_for_plugin).add(name, RuntimeScriptValue().SetPluginMethod(sc, name), nullptr) == 0;
}
void *ccGetSymbolAddressForPlugin(const String &name) {
@@ -132,9 +132,9 @@ void ccSetDebugHook(new_line_hook_type jibble) {
_G(new_line_hook) = jibble;
}
-int call_function(intptr_t addr, const RuntimeScriptValue *object, int numparm, const RuntimeScriptValue *parms) {
- if (!addr) {
- cc_error("null function pointer in call_function");
+int call_function(Plugins::ScriptContainer *sc, const Common::String &name, const RuntimeScriptValue *object, int numparm, const RuntimeScriptValue *parms) {
+ if (!sc) {
+ cc_error("null script container pointer in call_function");
return -1;
}
if (numparm > 0 && !parms) {
@@ -178,8 +178,7 @@ int call_function(intptr_t addr, const RuntimeScriptValue *object, int numparm,
params.push_back(parm_value[i]);
// Call the method
- Plugins::PluginMethod fparam = (Plugins::PluginMethod)addr;
- fparam(params);
+ (*sc).execMethod(name, params);
// TODO: Though some script methods return pointers, the call_function only
// supports a 32-bit result. In case they're actually used by any game, the
diff --git a/engines/ags/engine/script/script_runtime.h b/engines/ags/engine/script/script_runtime.h
index 16fab3496e..84d8997742 100644
--- a/engines/ags/engine/script/script_runtime.h
+++ b/engines/ags/engine/script/script_runtime.h
@@ -55,7 +55,7 @@ using AGS::Shared::String;
// give the script access to a variable or function in your program
extern bool ccAddExternalStaticFunction(const String &name, ScriptAPIFunction *pfn);
// temporary workaround for plugins
-extern bool ccAddExternalPluginFunction(const String &name, void *pfn);
+extern bool ccAddExternalPluginFunction(const String &name, Plugins::ScriptContainer *sc);
extern bool ccAddExternalStaticObject(const String &name, void *ptr, ICCStaticObject *manager);
extern bool ccAddExternalStaticArray(const String &name, void *ptr, StaticArray *array_mgr);
extern bool ccAddExternalDynamicObject(const String &name, void *ptr, ICCDynamicObject *manager);
@@ -83,7 +83,8 @@ extern void ccSetScriptAliveTimer(int);
// reset the current while loop counter
extern void ccNotifyScriptStillAlive();
// for calling exported plugin functions old-style
-extern int call_function(intptr_t addr, const RuntimeScriptValue *obj, int numparm, const RuntimeScriptValue *parms);
+extern int call_function(Plugins::ScriptContainer *sc, const Common::String &name,
+ const RuntimeScriptValue *obj, int numparm, const RuntimeScriptValue *parms);
extern void nullfree(void *data); // in script/script_runtime
} // namespace AGS3
diff --git a/engines/ags/engine/util/library.h b/engines/ags/engine/util/library.h
index 486ee7f84f..ded8d3c418 100644
--- a/engines/ags/engine/util/library.h
+++ b/engines/ags/engine/util/library.h
@@ -41,8 +41,6 @@ public:
virtual bool Load(const AGS::Shared::String &libraryName) = 0;
virtual bool Unload() = 0;
-
- virtual void *GetFunctionAddress(const AGS::Shared::String &functionName) = 0;
};
} // namespace Engine
diff --git a/engines/ags/engine/util/library_scummvm.h b/engines/ags/engine/util/library_scummvm.h
index 0af2600ef9..62e09c14bc 100644
--- a/engines/ags/engine/util/library_scummvm.h
+++ b/engines/ags/engine/util/library_scummvm.h
@@ -58,7 +58,7 @@ public:
bool Unload() override {
if (_library) {
- void *lib = _library;
+ Plugins::PluginBase *lib = _library;
_library = nullptr;
return (Plugins::pluginClose(lib) == 0);
@@ -67,16 +67,8 @@ public:
}
}
- void *GetFunctionAddress(const AGS::Shared::String &functionName) override {
- if (_library) {
- return Plugins::pluginSym(_library, functionName.GetCStr());
- } else {
- return nullptr;
- }
- }
-
private:
- void *_library;
+ Plugins::PluginBase *_library;
};
diff --git a/engines/ags/module.mk b/engines/ags/module.mk
index ee391c5917..ff05807b12 100644
--- a/engines/ags/module.mk
+++ b/engines/ags/module.mk
@@ -317,7 +317,8 @@ MODULE_OBJS = \
plugins/core/string.o \
plugins/core/system.o \
plugins/core/textbox.o \
- plugins/core/view_frame.o \
+ plugins/core/view_frame.o
+/*
plugins/ags_agi/ags_agi.o \
plugins/ags_blend/ags_blend.o \
plugins/ags_clipboard/ags_clipboard.o \
@@ -352,7 +353,7 @@ MODULE_OBJS = \
plugins/ags_tcp_ip/ags_tcp_ip.o \
plugins/ags_wadjet_util/ags_wadjet_util.o \
plugins/ags_waves/ags_waves.o
-
+*/
ifdef ENABLE_AGS_TESTS
MODULE_OBJS += \
tests/test_all.o \
diff --git a/engines/ags/plugins/ags_agi/ags_agi.cpp b/engines/ags/plugins/ags_agi/ags_agi.cpp
index ce1f4aaf36..9cc225b5cf 100644
--- a/engines/ags/plugins/ags_agi/ags_agi.cpp
+++ b/engines/ags/plugins/ags_agi/ags_agi.cpp
@@ -28,10 +28,6 @@ namespace AGSAgi {
int screen_mode = 0;
-IAGSEngine *AGSAgi::_engine;
-int AGSAgi::_enabled;
-int AGSAgi::_scaling_mode;
-
AGSAgi::AGSAgi() : PluginBase() {
_engine = nullptr;
_enabled = 0;
diff --git a/engines/ags/plugins/ags_agi/ags_agi.h b/engines/ags/plugins/ags_agi/ags_agi.h
index e2eb18c25f..8d7d424e78 100644
--- a/engines/ags/plugins/ags_agi/ags_agi.h
+++ b/engines/ags/plugins/ags_agi/ags_agi.h
@@ -31,18 +31,17 @@ namespace AGSAgi {
class AGSAgi : public PluginBase {
private:
- static IAGSEngine *_engine;
- static int _enabled;
- static int _scaling_mode;
+ int _enabled = 0;
+ int _scaling_mode = 0;
private:
- static const char *AGS_GetPluginName();
- static void AGS_EngineStartup(IAGSEngine *engine);
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *engine) override;
private:
- static void SetAGIScalingMode(ScriptMethodParams ¶ms);
- static void GetAGIScalingMode(ScriptMethodParams ¶ms);
- static void UseAGIScaling(ScriptMethodParams ¶ms);
+ void SetAGIScalingMode(ScriptMethodParams ¶ms);
+ void GetAGIScalingMode(ScriptMethodParams ¶ms);
+ void UseAGIScaling(ScriptMethodParams ¶ms);
public:
AGSAgi();
diff --git a/engines/ags/plugins/ags_blend/ags_blend.cpp b/engines/ags/plugins/ags_blend/ags_blend.cpp
index 9942bff89f..1b165027b5 100644
--- a/engines/ags/plugins/ags_blend/ags_blend.cpp
+++ b/engines/ags/plugins/ags_blend/ags_blend.cpp
@@ -109,23 +109,23 @@ void AGSBlend::AGS_EngineStartup(IAGSEngine *engine) {
#pragma region Color_Functions
-static int getr32(int c) {
+int getr32(int c) {
return ((c >> DEFAULT_RGB_R_SHIFT_32) & 0xFF);
}
-static int getg32(int c) {
+int getg32(int c) {
return ((c >> DEFAULT_RGB_G_SHIFT_32) & 0xFF);
}
-static int getb32(int c) {
+int getb32(int c) {
return ((c >> DEFAULT_RGB_B_SHIFT_32) & 0xFF);
}
-static int geta32(int c) {
+int geta32(int c) {
return ((c >> DEFAULT_RGB_A_SHIFT_32) & 0xFF);
}
-static int makeacol32(int r, int g, int b, int a) {
+int makeacol32(int r, int g, int b, int a) {
return ((r << DEFAULT_RGB_R_SHIFT_32) |
(g << DEFAULT_RGB_G_SHIFT_32) |
(b << DEFAULT_RGB_B_SHIFT_32) |
diff --git a/engines/ags/plugins/ags_blend/ags_blend.h b/engines/ags/plugins/ags_blend/ags_blend.h
index 0e0dce8986..74d967fcc3 100644
--- a/engines/ags/plugins/ags_blend/ags_blend.h
+++ b/engines/ags/plugins/ags_blend/ags_blend.h
@@ -35,32 +35,32 @@ namespace AGSBlend {
*/
class AGSBlend : public PluginBase {
private:
-static IAGSEngine *_engine;
+IAGSEngine *_engine;
private:
-static const char *AGS_GetPluginName();
-static void AGS_EngineStartup(IAGSEngine *lpEngine);
+const char *AGS_GetPluginName();
+void AGS_EngineStartup(IAGSEngine *lpEngine);
private:
/**
* Gets the alpha value at coords x,y
*/
-static void GetAlpha(ScriptMethodParams ¶ms);
+void GetAlpha(ScriptMethodParams ¶ms);
/**
* Sets the alpha value at coords x,y
*/
-static void PutAlpha(ScriptMethodParams ¶ms);
+void PutAlpha(ScriptMethodParams ¶ms);
/**
* Translates index from a 2D array to a 1D array
*/
-static int xytolocale(int x, int y, int width);
+int xytolocale(int x, int y, int width);
-static void HighPass(ScriptMethodParams ¶ms);
-static void Blur(ScriptMethodParams ¶ms);
-static void DrawSprite(ScriptMethodParams ¶ms);
-static void DrawAdd(ScriptMethodParams ¶ms);
-static void DrawAlpha(ScriptMethodParams ¶ms);
+void HighPass(ScriptMethodParams ¶ms);
+void Blur(ScriptMethodParams ¶ms);
+void DrawSprite(ScriptMethodParams ¶ms);
+void DrawAdd(ScriptMethodParams ¶ms);
+void DrawAlpha(ScriptMethodParams ¶ms);
public:
AGSBlend();
diff --git a/engines/ags/plugins/ags_clipboard/ags_clipboard.h b/engines/ags/plugins/ags_clipboard/ags_clipboard.h
index 885e9c4dd0..697f867b9f 100644
--- a/engines/ags/plugins/ags_clipboard/ags_clipboard.h
+++ b/engines/ags/plugins/ags_clipboard/ags_clipboard.h
@@ -31,14 +31,14 @@ namespace AGSClipboard {
class AGSClipboard : public PluginBase {
private:
- static IAGSEngine *_engine;
- static Common::String *_text;
+ IAGSEngine *_engine;
+ Common::String *_text;
private:
- static const char *AGS_GetPluginName();
- static void AGS_EngineStartup(IAGSEngine *engine);
- static void AGS_EngineShutdown();
- static void Clipboard_PasteText(ScriptMethodParams ¶ms);
- static void Clipboard_CopyText(ScriptMethodParams ¶ms);
+ const char *AGS_GetPluginName();
+ void AGS_EngineStartup(IAGSEngine *engine) override;
+ void AGS_EngineShutdown();
+ void Clipboard_PasteText(ScriptMethodParams ¶ms);
+ void Clipboard_CopyText(ScriptMethodParams ¶ms);
public:
AGSClipboard();
diff --git a/engines/ags/plugins/ags_controller/ags_controller.h b/engines/ags/plugins/ags_controller/ags_controller.h
index c5b4884598..986bab0125 100644
--- a/engines/ags/plugins/ags_controller/ags_controller.h
+++ b/engines/ags/plugins/ags_controller/ags_controller.h
@@ -31,30 +31,30 @@ namespace AGSController {
class AGSController : public PluginBase {
private:
-static IAGSEngine *_engine;
+IAGSEngine *_engine;
private:
-static const char *AGS_GetPluginName();
-static void AGS_EngineStartup(IAGSEngine *engine);
-static void AGS_EngineShutdown();
-static int64 AGS_EngineOnEvent(int event, NumberPtr data);
+const char *AGS_GetPluginName();
+void AGS_EngineStartup(IAGSEngine *engine) override;
+void AGS_EngineShutdown();
+int64 AGS_EngineOnEvent(int event, NumberPtr data);
private:
-static void Controller_Update();
+void Controller_Update();
-static void ControllerCount(ScriptMethodParams ¶ms);
-static void Controller_Open(ScriptMethodParams ¶ms);
-static void Controller_Plugged(ScriptMethodParams ¶ms);
-static void Controller_GetAxis(ScriptMethodParams ¶ms);
-static void Controller_GetPOV(ScriptMethodParams ¶ms);
-static void Controller_IsButtonDown(ScriptMethodParams ¶ms);
-static void Controller_Close(ScriptMethodParams ¶ms);
-static void Controller_GetName(ScriptMethodParams ¶ms);
-static void Controller_Rumble(ScriptMethodParams ¶ms);
-static void Controller_IsButtonDownOnce(ScriptMethodParams ¶ms);
-static void Controller_PressAnyKey(ScriptMethodParams ¶ms);
-static void Controller_BatteryStatus(ScriptMethodParams ¶ms);
-static void ClickMouse(ScriptMethodParams ¶ms);
+void ControllerCount(ScriptMethodParams ¶ms);
+void Controller_Open(ScriptMethodParams ¶ms);
+void Controller_Plugged(ScriptMethodParams ¶ms);
+void Controller_GetAxis(ScriptMethodParams ¶ms);
+void Controller_GetPOV(ScriptMethodParams ¶ms);
+void Controller_IsButtonDown(ScriptMethodParams ¶ms);
+void Controller_Close(ScriptMethodParams ¶ms);
+void Controller_GetName(ScriptMethodParams ¶ms);
+void Controller_Rumble(ScriptMethodParams ¶ms);
+void Controller_IsButtonDownOnce(ScriptMethodParams ¶ms);
+void Controller_PressAnyKey(ScriptMethodParams ¶ms);
+void Controller_BatteryStatus(ScriptMethodParams ¶ms);
+void ClickMouse(ScriptMethodParams ¶ms);
public:
AGSController();
};
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz.cpp b/engines/ags/plugins/ags_creditz/ags_creditz.cpp
index 88e872e486..e9a38ae1d6 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz.cpp
+++ b/engines/ags/plugins/ags_creditz/ags_creditz.cpp
@@ -72,9 +72,9 @@ void AGSCreditz::draw() {
_engine->MarkRegionDirty(0, 0, _state->_screenWidth, _state->_screenHeight);
} else {
- // Static credits
+ // credits
if (!_state->_singleStatic.bool_) {
- if (_state->_currentStatic < (int)_state->_stCredits[_state->_creditSequence].size()) {
+ if (_state->_current< (int)_state->_stCredits[_state->_creditSequence].size()) {
if (_state->_stCredits[_state->_creditSequence][_state->_currentStatic].pause > 0) {
// Pause
if (_state->_timer <= _state->_stCredits[_state->_creditSequence][_state->_currentStatic].pause) {
@@ -93,7 +93,7 @@ void AGSCreditz::draw() {
_state->_timer = 0;
_state->_currentStatic++;
if (_state->_stCredits[_state->_creditSequence][_state->_currentStatic].pause <= 0 &&
- _state->_currentStatic < (int)_state->_stCredits[_state->_creditSequence].size())
+ _state->_current< (int)_state->_stCredits[_state->_creditSequence].size())
drawCredit(_state->_creditSequence, _state->_currentStatic);
else
return;
@@ -109,7 +109,7 @@ void AGSCreditz::draw() {
_state->_timer = 0;
_state->_currentStatic++;
if (_state->_stCredits[_state->_creditSequence][_state->_currentStatic].pause <= 0 &&
- (int)_state->_currentStatic <= (int)_state->_stCredits[_state->_creditSequence].size())
+ (int)_state->_current<= (int)_state->_stCredits[_state->_creditSequence].size())
drawCredit(_state->_creditSequence, _state->_currentStatic);
else
return;
@@ -121,7 +121,7 @@ void AGSCreditz::draw() {
_state->_creditsRunning = false;
_state->_creditSequence = -1;
_state->_timer = 0;
- _state->_currentStatic = 1;
+ _state->_current= 1;
return;
}
} else {
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz.h b/engines/ags/plugins/ags_creditz/ags_creditz.h
index d917ed7de0..60330f6f95 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz.h
+++ b/engines/ags/plugins/ags_creditz/ags_creditz.h
@@ -82,7 +82,7 @@ int speed = 0;
bool finished = false;
};
-struct SingleStatic {
+struct Single{
int id = 0;
int time = 0;
int style = 0;
@@ -99,13 +99,13 @@ CreditArray _credits[10];
StCreditArray _stCredits[10];
bool _creditsRunning = 0, _paused = 0, _staticCredits = 0;
int _creditSequence = 0, _yPos = 0, _sequenceHeight = 0, _speedPoint = 0;
-int _calculatedSequenceHeight = 0, _timer = 0, _currentStatic = 0;
+int _calculatedSequenceHeight = 0, _timer = 0, _current= 0;
int _numChars = 0, _timer2 = 0;
int _emptyLineHeight = 10;
int _strCredit[10];
SequenceSettings _seqSettings[10];
StSequenceSettings _stSeqSettings[10];
-SingleStatic _singleStatic;
+Single_singleStatic;
// Version 1.1 specific
bool _resolutionFlag = false;
@@ -116,29 +116,29 @@ bool _staticWidthMatches = false;
class AGSCreditz : public PluginBase, public Drawing {
private:
-static int drawCredit(int sequence, int credit);
-static void doCredits();
-static int countLines(const Common::String &text);
-static Common::String extractParameter(Common::String &line, const Common::String &separator);
-static void specialEffect(int sequence, int credit, const Common::String &text,
+int drawCredit(int sequence, int credit);
+void doCredits();
+int countLines(const Common::String &text);
+Common::String extractParameter(Common::String &line, const Common::String &separator);
+void specialEffect(int sequence, int credit, const Common::String &text,
int font, int color, int32 x_pos);
-static void drawStEffects(int sequence, int id, int style);
-static void speeder(int sequence);
+void drawStEffects(int sequence, int id, int style);
+void speeder(int sequence);
protected:
enum Version {
VERSION_11 = 11, VERSION_20 = 20
};
-static Version _version;
-static State *_state;
-static IAGSEngine *_engine;
-static IntFunction _playSound;
+Version _version;
+State *_state;
+IAGSEngine *_engine;
+IntFunction _playSound;
-static void draw();
-static void calculateSequenceHeight(int sequence);
-static int VGACheck(int value);
-static void startSequence(int sequence);
+void draw();
+void calculateSequenceHeight(int sequence);
+int VGACheck(int value);
+void startSequence(int sequence);
public:
AGSCreditz();
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz1.cpp b/engines/ags/plugins/ags_creditz/ags_creditz1.cpp
index b98a9d3564..20970fd1db 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz1.cpp
+++ b/engines/ags/plugins/ags_creditz/ags_creditz1.cpp
@@ -215,7 +215,7 @@ void AGSCreditz1::StartEndStaticCredits(ScriptMethodParams ¶ms) {
_engine->AbortGame("StartEndStaticCredits: Wrong resolution");
} else {
- _state->_currentStatic = 0;
+ _state->_current= 0;
_engine->GetScreenDimensions(&_state->_screenWidth,
&_state->_screenHeight, &_state->_screenColorDepth);
@@ -271,9 +271,9 @@ void AGSCreditz1::ShowStaticCredit(ScriptMethodParams ¶ms) {
_state->_staticScreenWidth = (res == 1) ? 320 : 640;
_state->_staticWidthMatches = _state->_screenWidth == _state->_staticScreenWidth;
- _state->_currentStatic = ID;
+ _state->_current= ID;
- // TODO: Final static setup
+ // TODO: Final setup
}
}
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz1.h b/engines/ags/plugins/ags_creditz/ags_creditz1.h
index 184a8190eb..9cc50b81df 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz1.h
+++ b/engines/ags/plugins/ags_creditz/ags_creditz1.h
@@ -31,31 +31,31 @@ namespace AGSCreditz {
class AGSCreditz1 : public AGSCreditz {
private:
-static const char *AGS_GetPluginName();
-static void AGS_EngineStartup(IAGSEngine *engine);
-static int64 AGS_EngineOnEvent(int event, NumberPtr data);
+const char *AGS_GetPluginName();
+void AGS_EngineStartup(IAGSEngine *engine) override;
+int64 AGS_EngineOnEvent(int event, NumberPtr data);
-static void SetCredit(ScriptMethodParams ¶ms);
-static void ScrollCredits(ScriptMethodParams ¶ms);
-static void GetCredit(ScriptMethodParams ¶ms);
-static void IsCreditScrollingFinished(ScriptMethodParams ¶ms);
-static void SetCreditImage(ScriptMethodParams ¶ms);
-static void PauseScroll(ScriptMethodParams ¶ms);
-static void ScrollReset(ScriptMethodParams ¶ms);
-static void SetEmptyLineHeight(ScriptMethodParams ¶ms);
-static void GetEmptyLineHeight(ScriptMethodParams ¶ms);
-static void SetStaticCredit(ScriptMethodParams ¶ms);
-static void GetStaticCredit(ScriptMethodParams ¶ms);
-static void StartEndStaticCredits(ScriptMethodParams ¶ms);
-static void GetCurrentStaticCredit(ScriptMethodParams ¶ms);
-static void SetDefaultStaticDelay(ScriptMethodParams ¶ms);
-static void SetStaticPause(ScriptMethodParams ¶ms);
-static void SetStaticCreditTitle(ScriptMethodParams ¶ms);
-static void ShowStaticCredit(ScriptMethodParams ¶ms);
-static void StaticReset(ScriptMethodParams ¶ms);
-static void GetStaticCreditTitle(ScriptMethodParams ¶ms);
-static void SetStaticCreditImage(ScriptMethodParams ¶ms);
-static void IsStaticCreditsFinished(ScriptMethodParams ¶ms);
+void SetCredit(ScriptMethodParams ¶ms);
+void ScrollCredits(ScriptMethodParams ¶ms);
+void GetCredit(ScriptMethodParams ¶ms);
+void IsCreditScrollingFinished(ScriptMethodParams ¶ms);
+void SetCreditImage(ScriptMethodParams ¶ms);
+void PauseScroll(ScriptMethodParams ¶ms);
+void ScrollReset(ScriptMethodParams ¶ms);
+void SetEmptyLineHeight(ScriptMethodParams ¶ms);
+void GetEmptyLineHeight(ScriptMethodParams ¶ms);
+void SetStaticCredit(ScriptMethodParams ¶ms);
+void GetStaticCredit(ScriptMethodParams ¶ms);
+void StartEndStaticCredits(ScriptMethodParams ¶ms);
+void GetCurrentStaticCredit(ScriptMethodParams ¶ms);
+void SetDefaultStaticDelay(ScriptMethodParams ¶ms);
+void SetStaticPause(ScriptMethodParams ¶ms);
+void SetStaticCreditTitle(ScriptMethodParams ¶ms);
+void ShowStaticCredit(ScriptMethodParams ¶ms);
+void StaticReset(ScriptMethodParams ¶ms);
+void GetStaticCreditTitle(ScriptMethodParams ¶ms);
+void SetStaticCreditImage(ScriptMethodParams ¶ms);
+void IsStaticCreditsFinished(ScriptMethodParams ¶ms);
public:
AGSCreditz1();
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz2.cpp b/engines/ags/plugins/ags_creditz/ags_creditz2.cpp
index bf7d00d9d9..bbd88e67d2 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz2.cpp
+++ b/engines/ags/plugins/ags_creditz/ags_creditz2.cpp
@@ -215,7 +215,7 @@ void AGSCreditz2::RunStaticCreditSequence(ScriptMethodParams ¶ms) {
_state->_creditSequence = sequence;
_state->_staticCredits = true;
_state->_creditsRunning = true;
- _state->_currentStatic = 1;
+ _state->_current= 1;
_state->_timer = 0;
draw();
@@ -224,7 +224,7 @@ void AGSCreditz2::RunStaticCreditSequence(ScriptMethodParams ¶ms) {
_state->_creditSequence = -1;
_state->_stSeqSettings[sequence].finished = false;
_state->_creditsRunning = false;
- _state->_currentStatic = 0;
+ _state->_current= 0;
_state->_timer = 0;
}
}
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz2.h b/engines/ags/plugins/ags_creditz/ags_creditz2.h
index 3c4216c544..a5c4493986 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz2.h
+++ b/engines/ags/plugins/ags_creditz/ags_creditz2.h
@@ -31,28 +31,28 @@ namespace AGSCreditz {
class AGSCreditz2 : public AGSCreditz {
private:
-static const char *AGS_GetPluginName();
-static void AGS_EngineStartup(IAGSEngine *engine);
-static int64 AGS_EngineOnEvent(int event, NumberPtr data);
+const char *AGS_GetPluginName();
+void AGS_EngineStartup(IAGSEngine *engine) override;
+int64 AGS_EngineOnEvent(int event, NumberPtr data);
-static void RunCreditSequence(ScriptMethodParams ¶ms);
-static void SetCredit(ScriptMethodParams ¶ms);
-static void GetCredit(ScriptMethodParams ¶ms);
-static void CreditsSettings(ScriptMethodParams ¶ms);
-static void SequenceSettings(ScriptMethodParams ¶ms);
-static void IsSequenceFinished(ScriptMethodParams ¶ms);
-static void PauseScrolling(ScriptMethodParams ¶ms);
-static void SetCreditImage(ScriptMethodParams ¶ms);
-static void ResetSequence(ScriptMethodParams ¶ms);
+void RunCreditSequence(ScriptMethodParams ¶ms);
+void SetCredit(ScriptMethodParams ¶ms);
+void GetCredit(ScriptMethodParams ¶ms);
+void CreditsSettings(ScriptMethodParams ¶ms);
+void SequenceSettings(ScriptMethodParams ¶ms);
+void IsSequenceFinished(ScriptMethodParams ¶ms);
+void PauseScrolling(ScriptMethodParams ¶ms);
+void SetCreditImage(ScriptMethodParams ¶ms);
+void ResetSequence(ScriptMethodParams ¶ms);
-static void SetStaticCredit(ScriptMethodParams ¶ms);
-static void SetStaticCreditTitle(ScriptMethodParams ¶ms);
-static void SetStaticPause(ScriptMethodParams ¶ms);
-static void RunStaticCreditSequence(ScriptMethodParams ¶ms);
-static void IsStaticSequenceFinished(ScriptMethodParams ¶ms);
-static void ShowStaticCredit(ScriptMethodParams ¶ms);
-static void SetStaticImage(ScriptMethodParams ¶ms);
-static void GetCurrentStaticCredit(ScriptMethodParams ¶ms);
+void SetStaticCredit(ScriptMethodParams ¶ms);
+void SetStaticCreditTitle(ScriptMethodParams ¶ms);
+void SetStaticPause(ScriptMethodParams ¶ms);
+void RunStaticCreditSequence(ScriptMethodParams ¶ms);
+void IsStaticSequenceFinished(ScriptMethodParams ¶ms);
+void ShowStaticCredit(ScriptMethodParams ¶ms);
+void SetStaticImage(ScriptMethodParams ¶ms);
+void GetCurrentStaticCredit(ScriptMethodParams ¶ms);
public:
AGSCreditz2();
diff --git a/engines/ags/plugins/ags_creditz/drawing.h b/engines/ags/plugins/ags_creditz/drawing.h
index 6dc3cd07f4..0d05cb4003 100644
--- a/engines/ags/plugins/ags_creditz/drawing.h
+++ b/engines/ags/plugins/ags_creditz/drawing.h
@@ -31,7 +31,7 @@ namespace AGSCreditz {
class Drawing {
public:
-static void drawPixel(uint8 *bitmap, int32 x, int32 y,
+void drawPixel(uint8 *bitmap, int32 x, int32 y,
uint col, int32 pitch, int32 coldepth) {
switch (coldepth) {
case 8:
@@ -46,7 +46,7 @@ static void drawPixel(uint8 *bitmap, int32 x, int32 y,
}
}
-static uint getPixelColor(uint8 *bitmap, int32 x, int32 y,
+uint getPixelColor(uint8 *bitmap, int32 x, int32 y,
int32 pitch, int32 coldepth) {
switch (coldepth) {
case 8:
diff --git a/engines/ags/plugins/ags_fire/ags_fire.h b/engines/ags/plugins/ags_fire/ags_fire.h
index 8581516c17..c19ce42b7b 100644
--- a/engines/ags/plugins/ags_fire/ags_fire.h
+++ b/engines/ags/plugins/ags_fire/ags_fire.h
@@ -31,19 +31,19 @@ namespace AGSFire {
class AGSFire : public PluginBase {
private:
- static IAGSEngine *_engine;
- static const char *AGS_GetPluginName();
- static void AGS_EngineStartup(IAGSEngine *engine);
+ IAGSEngine *_engine;
+ const char *AGS_GetPluginName();
+ void AGS_EngineStartup(IAGSEngine *engine) override;
private:
- static void FireAddObject(ScriptMethodParams ¶ms);
- static void FirePreHeat(ScriptMethodParams ¶ms);
- static void FireDisableSeeding(ScriptMethodParams ¶ms);
- static void FireEnableSeeding(ScriptMethodParams ¶ms);
- static void FireSetStrength(ScriptMethodParams ¶ms);
- static void FireRemoveObject(ScriptMethodParams ¶ms);
- static void FireUpdate(ScriptMethodParams ¶ms);
- static void FireStop(ScriptMethodParams ¶ms);
+ void FireAddObject(ScriptMethodParams ¶ms);
+ void FirePreHeat(ScriptMethodParams ¶ms);
+ void FireDisableSeeding(ScriptMethodParams ¶ms);
+ void FireEnableSeeding(ScriptMethodParams ¶ms);
+ void FireSetStrength(ScriptMethodParams ¶ms);
+ void FireRemoveObject(ScriptMethodParams ¶ms);
+ void FireUpdate(ScriptMethodParams ¶ms);
+ void FireStop(ScriptMethodParams ¶ms);
public:
AGSFire();
diff --git a/engines/ags/plugins/ags_flashlight/ags_flashlight.h b/engines/ags/plugins/ags_flashlight/ags_flashlight.h
index fd110cee20..0dc4fb9738 100644
--- a/engines/ags/plugins/ags_flashlight/ags_flashlight.h
+++ b/engines/ags/plugins/ags_flashlight/ags_flashlight.h
@@ -37,38 +37,38 @@ namespace AGSFlashlight {
*/
class AGSFlashlight : public PluginBase {
private:
-static IAGSEngine *_engine;
-static int32 screen_width;
-static int32 screen_height;
-static int32 screen_color_depth;
-static bool g_BitmapMustBeUpdated;
-static int g_RedTint;
-static int g_GreenTint;
-static int g_BlueTint;
-static int g_DarknessLightLevel;
-static int g_BrightnessLightLevel;
-static int g_DarknessSize;
-static int g_DarknessDiameter;
-static int g_BrightnessSize;
-static int32 g_FlashlightX;
-static int32 g_FlashlightY;
-static int32 g_FlashlightDrawAtX;
-static int32 g_FlashlightDrawAtY;
-static bool g_FlashlightFollowMouse;
-static int g_FollowCharacterId;
-static int g_FollowCharacterDx;
-static int g_FollowCharacterDy;
-static int g_FollowCharacterHorz;
-static int g_FollowCharacterVert;
-static AGSCharacter *g_FollowCharacter;
-static BITMAP *g_LightBitmap;
-static uint32 flashlight_x, flashlight_n;
+IAGSEngine *_engine;
+int32 screen_width;
+int32 screen_height;
+int32 screen_color_depth;
+bool g_BitmapMustBeUpdated;
+int g_RedTint;
+int g_GreenTint;
+int g_BlueTint;
+int g_DarknessLightLevel;
+int g_BrightnessLightLevel;
+int g_DarknessSize;
+int g_DarknessDiameter;
+int g_BrightnessSize;
+int32 g_FlashlightX;
+int32 g_FlashlightY;
+int32 g_FlashlightDrawAtX;
+int32 g_FlashlightDrawAtY;
+bool g_FlashlightFollowMouse;
+int g_FollowCharacterId;
+int g_FollowCharacterDx;
+int g_FollowCharacterDy;
+int g_FollowCharacterHorz;
+int g_FollowCharacterVert;
+AGSCharacter *g_FollowCharacter;
+BITMAP *g_LightBitmap;
+uint32 flashlight_x, flashlight_n;
private:
-static const char *AGS_GetPluginName();
-static void AGS_EngineStartup(IAGSEngine *engine);
-static void AGS_EngineShutdown();
-static int64 AGS_EngineOnEvent(int event, NumberPtr data);
+const char *AGS_GetPluginName();
+void AGS_EngineStartup(IAGSEngine *engine) override;
+void AGS_EngineShutdown();
+int64 AGS_EngineOnEvent(int event, NumberPtr data);
private:
/**
@@ -76,46 +76,46 @@ private:
* Combines a 32 bit RGBA sprite with a 16 bit RGB destination, optimised
* for when one pixel is in an RGB layout and the other is BGR.
*/
-static inline uint32 _blender_alpha16_bgr(uint32 y);
-static inline void calc_x_n(uint32 x);
-static inline void setPixel(int x, int y, uint32 color, uint32 *pixel);
-static void plotCircle(int xm, int ym, int r, uint32 color);
-static void ClipToRange(int &variable, int min, int max);
-static void AlphaBlendBitmap();
-static void DrawTint();
-static void DrawDarkness();
-static void CreateLightBitmap();
-static void Update();
-static uint32 blendPixel(uint32 col, bool isAlpha24, int light);
-static void syncGame(Serializer &s);
+inline uint32 _blender_alpha16_bgr(uint32 y);
+inline void calc_x_n(uint32 x);
+inline void setPixel(int x, int y, uint32 color, uint32 *pixel);
+void plotCircle(int xm, int ym, int r, uint32 color);
+void ClipToRange(int &variable, int min, int max);
+void AlphaBlendBitmap();
+void DrawTint();
+void DrawDarkness();
+void CreateLightBitmap();
+void Update();
+uint32 blendPixel(uint32 col, bool isAlpha24, int light);
+void syncGame(Serializer &s);
-static void SetFlashlightTint(ScriptMethodParams ¶ms);
-static void GetFlashlightTintRed(ScriptMethodParams ¶ms);
-static void GetFlashlightTintGreen(ScriptMethodParams ¶ms);
-static void GetFlashlightTintBlue(ScriptMethodParams ¶ms);
-static void GetFlashlightMinLightLevel(ScriptMethodParams ¶ms);
-static void GetFlashlightMaxLightLevel(ScriptMethodParams ¶ms);
-static void SetFlashlightDarkness(ScriptMethodParams ¶ms);
-static void GetFlashlightDarkness(ScriptMethodParams ¶ms);
-static void SetFlashlightDarknessSize(ScriptMethodParams ¶ms);
-static void GetFlashlightDarknessSize(ScriptMethodParams ¶ms);
-static void SetFlashlightBrightness(ScriptMethodParams ¶ms);
-static void GetFlashlightBrightness(ScriptMethodParams ¶ms);
-static void SetFlashlightBrightnessSize(ScriptMethodParams ¶ms);
-static void GetFlashlightBrightnessSize(ScriptMethodParams ¶ms);
-static void SetFlashlightPosition(ScriptMethodParams ¶ms);
-static void GetFlashlightPositionX(ScriptMethodParams ¶ms);
-static void GetFlashlightPositionY(ScriptMethodParams ¶ms);
-static void SetFlashlightFollowMouse(ScriptMethodParams ¶ms);
-static void GetFlashlightFollowMouse(ScriptMethodParams ¶ms);
-static void SetFlashlightFollowCharacter(ScriptMethodParams ¶ms);
-static void GetFlashlightFollowCharacter(ScriptMethodParams ¶ms);
-static void GetFlashlightCharacterDX(ScriptMethodParams ¶ms);
-static void GetFlashlightCharacterDY(ScriptMethodParams ¶ms);
-static void GetFlashlightCharacterHorz(ScriptMethodParams ¶ms);
-static void GetFlashlightCharacterVert(ScriptMethodParams ¶ms);
-static void SetFlashlightMask(ScriptMethodParams ¶ms);
-static void GetFlashlightMask(ScriptMethodParams ¶ms);
+void SetFlashlightTint(ScriptMethodParams ¶ms);
+void GetFlashlightTintRed(ScriptMethodParams ¶ms);
+void GetFlashlightTintGreen(ScriptMethodParams ¶ms);
+void GetFlashlightTintBlue(ScriptMethodParams ¶ms);
+void GetFlashlightMinLightLevel(ScriptMethodParams ¶ms);
+void GetFlashlightMaxLightLevel(ScriptMethodParams ¶ms);
+void SetFlashlightDarkness(ScriptMethodParams ¶ms);
+void GetFlashlightDarkness(ScriptMethodParams ¶ms);
+void SetFlashlightDarknessSize(ScriptMethodParams ¶ms);
+void GetFlashlightDarknessSize(ScriptMethodParams ¶ms);
+void SetFlashlightBrightness(ScriptMethodParams ¶ms);
+void GetFlashlightBrightness(ScriptMethodParams ¶ms);
+void SetFlashlightBrightnessSize(ScriptMethodParams ¶ms);
+void GetFlashlightBrightnessSize(ScriptMethodParams ¶ms);
+void SetFlashlightPosition(ScriptMethodParams ¶ms);
+void GetFlashlightPositionX(ScriptMethodParams ¶ms);
+void GetFlashlightPositionY(ScriptMethodParams ¶ms);
+void SetFlashlightFollowMouse(ScriptMethodParams ¶ms);
+void GetFlashlightFollowMouse(ScriptMethodParams ¶ms);
+void SetFlashlightFollowCharacter(ScriptMethodParams ¶ms);
+void GetFlashlightFollowCharacter(ScriptMethodParams ¶ms);
+void GetFlashlightCharacterDX(ScriptMethodParams ¶ms);
+void GetFlashlightCharacterDY(ScriptMethodParams ¶ms);
+void GetFlashlightCharacterHorz(ScriptMethodParams ¶ms);
+void GetFlashlightCharacterVert(ScriptMethodParams ¶ms);
+void SetFlashlightMask(ScriptMethodParams ¶ms);
+void GetFlashlightMask(ScriptMethodParams ¶ms);
public:
AGSFlashlight();
};
diff --git a/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.h b/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.h
index b0deb7308d..d3ef7dbd71 100644
--- a/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.h
+++ b/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.h
@@ -35,30 +35,30 @@ namespace AGSGalaxySteam {
class AGS2Client : public PluginBase {
protected:
- static void IsAchievementAchieved(ScriptMethodParams ¶ms);
- static void SetAchievementAchieved(ScriptMethodParams ¶ms);
- static void ResetAchievement(ScriptMethodParams ¶ms);
- static void GetIntStat(ScriptMethodParams ¶ms);
- static void GetFloatStat(ScriptMethodParams ¶ms);
- static void GetAverageRateStat(ScriptMethodParams ¶ms);
- static void SetIntStat(ScriptMethodParams ¶ms);
- static void SetFloatStat(ScriptMethodParams ¶ms);
- static void UpdateAverageRateStat(ScriptMethodParams ¶ms);
- static void ResetStatsAndAchievements(ScriptMethodParams ¶ms);
- static void get_Initialized(ScriptMethodParams ¶ms);
- static void get_CurrentLeaderboardName(ScriptMethodParams ¶ms);
- static void RequestLeaderboard(ScriptMethodParams ¶ms);
- static void UploadScore(ScriptMethodParams ¶ms);
- static void geti_LeaderboardNames(ScriptMethodParams ¶ms);
- static void geti_LeaderboardScores(ScriptMethodParams ¶ms);
- static void get_LeaderboardCount(ScriptMethodParams ¶ms);
- static void GetUserName(ScriptMethodParams ¶ms);
- static void GetCurrentGameLanguage(ScriptMethodParams ¶ms);
- static void FindLeaderboard(ScriptMethodParams ¶ms);
- static void Initialize(ScriptMethodParams ¶ms);
+ void IsAchievementAchieved(ScriptMethodParams ¶ms);
+ void SetAchievementAchieved(ScriptMethodParams ¶ms);
+ void ResetAchievement(ScriptMethodParams ¶ms);
+ void GetIntStat(ScriptMethodParams ¶ms);
+ void GetFloatStat(ScriptMethodParams ¶ms);
+ void GetAverageRateStat(ScriptMethodParams ¶ms);
+ void SetIntStat(ScriptMethodParams ¶ms);
+ void SetFloatStat(ScriptMethodParams ¶ms);
+ void UpdateAverageRateStat(ScriptMethodParams ¶ms);
+ void ResetStatsAndAchievements(ScriptMethodParams ¶ms);
+ void get_Initialized(ScriptMethodParams ¶ms);
+ void get_CurrentLeaderboardName(ScriptMethodParams ¶ms);
+ void RequestLeaderboard(ScriptMethodParams ¶ms);
+ void UploadScore(ScriptMethodParams ¶ms);
+ void geti_LeaderboardNames(ScriptMethodParams ¶ms);
+ void geti_LeaderboardScores(ScriptMethodParams ¶ms);
+ void get_LeaderboardCount(ScriptMethodParams ¶ms);
+ void GetUserName(ScriptMethodParams ¶ms);
+ void GetCurrentGameLanguage(ScriptMethodParams ¶ms);
+ void FindLeaderboard(ScriptMethodParams ¶ms);
+ void Initialize(ScriptMethodParams ¶ms);
protected:
- static void AGS_EngineStartup(IAGSEngine *engine);
+ void AGS_EngineStartup(IAGSEngine *engine) override;
public:
AGS2Client();
@@ -66,8 +66,8 @@ public:
class AGSGalaxy : public AGS2Client {
private:
- static const char *AGS_GetPluginName();
- static void AGS_EngineStartup(IAGSEngine *engine);
+ const char *AGS_GetPluginName();
+ void AGS_EngineStartup(IAGSEngine *engine) override;
public:
AGSGalaxy();
@@ -75,10 +75,10 @@ public:
class AGSSteam : public AGS2Client {
private:
- static const char *AGS_GetPluginName();
+ const char *AGS_GetPluginName();
protected:
- static void AGS_EngineStartup(IAGSEngine *engine);
+ void AGS_EngineStartup(IAGSEngine *engine) override;
public:
AGSSteam();
diff --git a/engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.h b/engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.h
index 5285de4525..9445834c7a 100644
--- a/engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.h
+++ b/engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.h
@@ -31,9 +31,9 @@ namespace AGSGalaxySteam {
class AGSWadjetEyeSteam : public AGSSteam {
private:
- static void AGS_EngineStartup(IAGSEngine *engine);
- static void AddAchievement(ScriptMethodParams ¶ms);
- static void AddStat(ScriptMethodParams ¶ms);
+ void AGS_EngineStartup(IAGSEngine *engine) override;
+ void AddAchievement(ScriptMethodParams ¶ms);
+ void AddStat(ScriptMethodParams ¶ms);
public:
AGSWadjetEyeSteam();
diff --git a/engines/ags/plugins/ags_joy/ags_joy.h b/engines/ags/plugins/ags_joy/ags_joy.h
index 90055b256a..76cf9fa7c8 100644
--- a/engines/ags/plugins/ags_joy/ags_joy.h
+++ b/engines/ags/plugins/ags_joy/ags_joy.h
@@ -31,28 +31,28 @@ namespace AGSJoy {
class AGSJoy : public PluginBase {
private:
-static IAGSEngine *_engine;
+IAGSEngine *_engine;
private:
-static const char *AGS_GetPluginName();
-static void AGS_EngineStartup(IAGSEngine *lpEngine);
+const char *AGS_GetPluginName();
+void AGS_EngineStartup(IAGSEngine *lpEngine);
private:
-static void Count(ScriptMethodParams ¶ms);
-static void Name(ScriptMethodParams ¶ms);
-static void Rescan(ScriptMethodParams ¶ms);
-static void Open(ScriptMethodParams ¶ms);
-static void IsOpen(ScriptMethodParams ¶ms);
-static void Click(ScriptMethodParams ¶ms);
-static void Close(ScriptMethodParams ¶ms);
-static void Valid(ScriptMethodParams ¶ms);
-static void Unplugged(ScriptMethodParams ¶ms);
-static void GetName(ScriptMethodParams ¶ms);
-static void GetAxis(ScriptMethodParams ¶ms);
-static void IsButtonDown(ScriptMethodParams ¶ms);
-static void IsJoyBtnDown(ScriptMethodParams ¶ms);
-static void Update(ScriptMethodParams ¶ms);
-static void DisableEvents(ScriptMethodParams ¶ms);
-static void EnableEvents(ScriptMethodParams ¶ms);
+void Count(ScriptMethodParams ¶ms);
+void Name(ScriptMethodParams ¶ms);
+void Rescan(ScriptMethodParams ¶ms);
+void Open(ScriptMethodParams ¶ms);
+void IsOpen(ScriptMethodParams ¶ms);
+void Click(ScriptMethodParams ¶ms);
+void Close(ScriptMethodParams ¶ms);
+void Valid(ScriptMethodParams ¶ms);
+void Unplugged(ScriptMethodParams ¶ms);
+void GetName(ScriptMethodParams ¶ms);
+void GetAxis(ScriptMethodParams ¶ms);
+void IsButtonDown(ScriptMethodParams ¶ms);
+void IsJoyBtnDown(ScriptMethodParams ¶ms);
+void Update(ScriptMethodParams ¶ms);
+void DisableEvents(ScriptMethodParams ¶ms);
+void EnableEvents(ScriptMethodParams ¶ms);
public:
AGSJoy();
diff --git a/engines/ags/plugins/ags_nickenstien_gfx/ags_nickenstien_gfx.h b/engines/ags/plugins/ags_nickenstien_gfx/ags_nickenstien_gfx.h
index e55b34f37e..e23b6893d7 100644
--- a/engines/ags/plugins/ags_nickenstien_gfx/ags_nickenstien_gfx.h
+++ b/engines/ags/plugins/ags_nickenstien_gfx/ags_nickenstien_gfx.h
@@ -32,88 +32,88 @@ namespace AGSNickenstienGFX {
class AGSNickenstienGFX : public PluginBase {
private:
-static IAGSEngine *_engine;
-static const char *AGS_GetPluginName();
-static void AGS_EngineStartup(IAGSEngine *engine);
+IAGSEngine *_engine;
+const char *AGS_GetPluginName();
+void AGS_EngineStartup(IAGSEngine *engine) override;
-static void NGFX_GRAPHICS_Initialise(ScriptMethodParams ¶ms);
-static void NGFX_GRAPHICS_Enable(ScriptMethodParams ¶ms);
-static void NGFX_GRAPHICS_SetTimeScalar(ScriptMethodParams ¶ms);
-static void NGFX_GRAPHICS_FullScreenFadeOut(ScriptMethodParams ¶ms);
-static void NGFX_GRAPHICS_FullScreenFadeIn(ScriptMethodParams ¶ms);
-static void NGFX_GRAPHICS_FullScreenFadeOut_2(ScriptMethodParams ¶ms);
-static void NGFX_GRAPHICS_FullScreenFadeOut_2_SetBackgroundColour(ScriptMethodParams ¶ms);
-static void NGFX_GRAPHICS_FullScreenFadeIn_2(ScriptMethodParams ¶ms);
-static void NGFX_GRAPHICS_SetAnisotropicFilter(ScriptMethodParams ¶ms);
-static void NGFX_TEXTURE_Load(ScriptMethodParams ¶ms);
-static void NGFX_TEXTURE_Release(ScriptMethodParams ¶ms);
-static void NGFX_TEXTURE_GetWidth(ScriptMethodParams ¶ms);
-static void NGFX_TEXTURE_GetHeight(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_Create(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_Release(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetType(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetLife(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetEmittionRate(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetParticlesPerEmittion(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetPosition1(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetPosition2(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetStartVelocity(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetStartVelocity_Deviation(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetEndVelocity(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetEndVelocity_Deviation(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetStartWidth(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetStartWidth_Deviation(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetEndWidth(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetEndWidth_Deviation(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetStartHeight(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetStartHeight_Deviation(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetEndHeight(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetEndHeight_Deviation(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetStartAngle(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetStartAngle_Deviation(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetRotation(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetRotation_Deviation(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetStartColour(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetStartColour_Deviation(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetEndColour(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetEndColour_Deviation(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetBlendMode(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetTexture(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetForce(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetParticleLife(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetParticleLife_Deviation(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetNoTimeOut(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetDrawOrderReversed(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetProcessWhenOffScreen(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetUseVelocityParticles(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_SetChannelID(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_Start(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_Clone(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_ReleaseAll(ScriptMethodParams ¶ms);
-static void NGFX_PARTICLE_EMITTER_Evolve(ScriptMethodParams ¶ms);
-static void NGFX_HasGameRoomChanged(ScriptMethodParams ¶ms);
-static void NGFX_HasGameRoomChanged_SecondTest(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_ResetForNewRoom(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_Create(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_Release(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_SetChannelID(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_SetPosition(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_SetPivot(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_SetTexture(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_SetBlendMode(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_SetWidth(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_SetHeight(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_SetAngle(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_SetColour_1(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_SetColour_2(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_SetColour_3(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_SetColour_4(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_SetClipRectangle(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_SetGourard(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_SetFlipped_H(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_SetFlipped_V(ScriptMethodParams ¶ms);
-static void NGFX_SPRITE_AddToDrawList(ScriptMethodParams ¶ms);
-static void NGFX_InitForNewGameLoop(ScriptMethodParams ¶ms);
+void NGFX_GRAPHICS_Initialise(ScriptMethodParams ¶ms);
+void NGFX_GRAPHICS_Enable(ScriptMethodParams ¶ms);
+void NGFX_GRAPHICS_SetTimeScalar(ScriptMethodParams ¶ms);
+void NGFX_GRAPHICS_FullScreenFadeOut(ScriptMethodParams ¶ms);
+void NGFX_GRAPHICS_FullScreenFadeIn(ScriptMethodParams ¶ms);
+void NGFX_GRAPHICS_FullScreenFadeOut_2(ScriptMethodParams ¶ms);
+void NGFX_GRAPHICS_FullScreenFadeOut_2_SetBackgroundColour(ScriptMethodParams ¶ms);
+void NGFX_GRAPHICS_FullScreenFadeIn_2(ScriptMethodParams ¶ms);
+void NGFX_GRAPHICS_SetAnisotropicFilter(ScriptMethodParams ¶ms);
+void NGFX_TEXTURE_Load(ScriptMethodParams ¶ms);
+void NGFX_TEXTURE_Release(ScriptMethodParams ¶ms);
+void NGFX_TEXTURE_GetWidth(ScriptMethodParams ¶ms);
+void NGFX_TEXTURE_GetHeight(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_Create(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_Release(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetType(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetLife(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetEmittionRate(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetParticlesPerEmittion(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetPosition1(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetPosition2(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetStartVelocity(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetStartVelocity_Deviation(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetEndVelocity(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetEndVelocity_Deviation(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetStartWidth(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetStartWidth_Deviation(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetEndWidth(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetEndWidth_Deviation(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetStartHeight(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetStartHeight_Deviation(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetEndHeight(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetEndHeight_Deviation(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetStartAngle(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetStartAngle_Deviation(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetRotation(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetRotation_Deviation(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetStartColour(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetStartColour_Deviation(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetEndColour(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetEndColour_Deviation(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetBlendMode(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetTexture(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetForce(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetParticleLife(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetParticleLife_Deviation(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetNoTimeOut(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetDrawOrderReversed(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetProcessWhenOffScreen(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetUseVelocityParticles(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_SetChannelID(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_Start(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_Clone(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_ReleaseAll(ScriptMethodParams ¶ms);
+void NGFX_PARTICLE_EMITTER_Evolve(ScriptMethodParams ¶ms);
+void NGFX_HasGameRoomChanged(ScriptMethodParams ¶ms);
+void NGFX_HasGameRoomChanged_SecondTest(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_ResetForNewRoom(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_Create(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_Release(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_SetChannelID(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_SetPosition(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_SetPivot(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_SetTexture(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_SetBlendMode(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_SetWidth(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_SetHeight(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_SetAngle(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_SetColour_1(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_SetColour_2(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_SetColour_3(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_SetColour_4(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_SetClipRectangle(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_SetGourard(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_SetFlipped_H(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_SetFlipped_V(ScriptMethodParams ¶ms);
+void NGFX_SPRITE_AddToDrawList(ScriptMethodParams ¶ms);
+void NGFX_InitForNewGameLoop(ScriptMethodParams ¶ms);
public:
AGSNickenstienGFX();
diff --git a/engines/ags/plugins/ags_pal_render/ags_pal_render.h b/engines/ags/plugins/ags_pal_render/ags_pal_render.h
index b07d8f76ab..a59d05be00 100644
--- a/engines/ags/plugins/ags_pal_render/ags_pal_render.h
+++ b/engines/ags/plugins/ags_pal_render/ags_pal_render.h
@@ -32,11 +32,11 @@ namespace AGSPalRender {
class AGSPalRender : public PluginBase {
private:
- static const char *AGS_GetPluginName();
- static void AGS_EngineStartup(IAGSEngine *lpEngine);
- static void AGS_EngineShutdown();
- static int64 AGS_EngineOnEvent(int event, NumberPtr data);
- static void syncGame(Serializer &s);
+ const char *AGS_GetPluginName();
+ void AGS_EngineStartup(IAGSEngine *lpEngine);
+ void AGS_EngineShutdown();
+ int64 AGS_EngineOnEvent(int event, NumberPtr data);
+ void syncGame(Serializer &s);
public:
AGSPalRender();
};
diff --git a/engines/ags/plugins/ags_pal_render/pal_render.h b/engines/ags/plugins/ags_pal_render/pal_render.h
index fdf0e9317f..6933b6d5b0 100644
--- a/engines/ags/plugins/ags_pal_render/pal_render.h
+++ b/engines/ags/plugins/ags_pal_render/pal_render.h
@@ -51,7 +51,7 @@ class Mix {
public:
//unsigned char MixColorAlpha (unsigned char fg,unsigned char bg,unsigned char alpha);
//unsigned char MixColorAdditive (unsigned char fg,unsigned char bg,unsigned char alpha);
- static unsigned char MixColorAlpha(unsigned char fg, unsigned char bg, unsigned char alpha, int use_objpal = 0) {
+ unsigned char MixColorAlpha(unsigned char fg, unsigned char bg, unsigned char alpha, int use_objpal = 0) {
unsigned char rfg = cycle_remap[fg]; //Automatic remapping of palette slots.
//unsigned char rbg = cycle_remap [bg]; //Saves on typing elsewhere.
AGSColor *palette = engine->GetPalette();
@@ -88,7 +88,7 @@ public:
//engine->ReleaseBitmapSurface (clutspr);
}
- static unsigned char MixColorLightLevel(unsigned char fg, unsigned char intensity) {
+ unsigned char MixColorLightLevel(unsigned char fg, unsigned char intensity) {
unsigned char rfg = cycle_remap [fg]; //Automatic remapping of palette slots.
int i = 0;
//int dark_r = (((palette[fg].r>>1) * (intensity))>>8);
@@ -102,7 +102,7 @@ public:
return cycle_remap [*(clutp + i)]; //Once again, to make sure that the palette slot used is the right one.
}
- static unsigned char MixColorAdditive(unsigned char fg, unsigned char bg, unsigned char alpha, int use_objpal = 0) {
+ unsigned char MixColorAdditive(unsigned char fg, unsigned char bg, unsigned char alpha, int use_objpal = 0) {
unsigned char rfg = cycle_remap[fg]; //Automatic remapping of palette slots.
//unsigned char rbg = cycle_remap[bg]; //Saves on typing elsewhere.
//BITMAP *clutspr = engine->GetSpriteGraphic (clutslot);
@@ -143,7 +143,7 @@ public:
return result;
}
- static unsigned char MixColorMultiply(unsigned char fg, unsigned char bg, unsigned char alpha, int use_objpal = 0) {
+ unsigned char MixColorMultiply(unsigned char fg, unsigned char bg, unsigned char alpha, int use_objpal = 0) {
unsigned char rfg = cycle_remap [fg]; //Automatic remapping of palette slots.
unsigned char rbg = cycle_remap [bg]; //Saves on typing elsewhere.
AGSColor *palette = engine->GetPalette();
diff --git a/engines/ags/plugins/ags_parallax/ags_parallax.h b/engines/ags/plugins/ags_parallax/ags_parallax.h
index 8581f43936..14416a0fa5 100644
--- a/engines/ags/plugins/ags_parallax/ags_parallax.h
+++ b/engines/ags/plugins/ags_parallax/ags_parallax.h
@@ -48,25 +48,25 @@ void syncGame(Serializer &s);
*/
class AGSParallax : public PluginBase {
private:
-static IAGSEngine *_engine;
-static int32 _screenWidth;
-static int32 _screenHeight;
-static int32 _screenColorDepth;
+IAGSEngine *_engine;
+int32 _screenWidth;
+int32 _screenHeight;
+int32 _screenColorDepth;
-static bool _enabled;
-static Sprite _sprites[MAX_SPRITES];
+bool _enabled;
+Sprite _sprites[MAX_SPRITES];
private:
-static const char *AGS_GetPluginName();
-static void AGS_EngineStartup(IAGSEngine *lpEngine);
-static int64 AGS_EngineOnEvent(int event, NumberPtr data);
+const char *AGS_GetPluginName();
+void AGS_EngineStartup(IAGSEngine *lpEngine);
+int64 AGS_EngineOnEvent(int event, NumberPtr data);
-static void pxDrawSprite(ScriptMethodParams ¶ms);
-static void pxDeleteSprite(ScriptMethodParams ¶ms);
+void pxDrawSprite(ScriptMethodParams ¶ms);
+void pxDeleteSprite(ScriptMethodParams ¶ms);
private:
-static void syncGame(Serializer &s);
-static void Draw(bool foreground);
-static void clear();
+void syncGame(Serializer &s);
+void Draw(bool foreground);
+void clear();
public:
AGSParallax();
diff --git a/engines/ags/plugins/ags_plugin.cpp b/engines/ags/plugins/ags_plugin.cpp
index e200518ea9..917ce7454b 100644
--- a/engines/ags/plugins/ags_plugin.cpp
+++ b/engines/ags/plugins/ags_plugin.cpp
@@ -85,16 +85,13 @@ const int PLUGIN_API_VERSION = 25;
struct EnginePlugin {
char filename[PLUGIN_FILENAME_MAX + 1];
AGS::Engine::Library library;
+ Plugins::PluginBase *_plugin;
bool available;
char *savedata;
int savedatasize;
int wantHook;
int invalidatedRegion;
- void (*engineStartup)(IAGSEngine *) = nullptr;
- void (*engineShutdown)() = nullptr;
- int (*onEvent)(int, NumberPtr) = nullptr;
- void (*initGfxHook)(const char *driverName, void *data) = nullptr;
- int (*debugHook)(const char *whichscript, int lineNumber, int reserved) = nullptr;
+
IAGSEngine eiface;
bool builtin;
@@ -118,8 +115,8 @@ int pluginsWantingDebugHooks = 0;
// On save/restore, the Engine will provide the plugin with a handle. Because we only ever save to one file at a time,
// we can reuse the same handle.
-static long pl_file_handle = -1;
-static Stream *pl_file_stream = nullptr;
+long pl_file_handle = -1;
+Stream *pl_file_stream = nullptr;
void PluginSimulateMouseClick(int pluginButtonID) {
_G(pluginSimulatedClick) = pluginButtonID - 1;
@@ -131,8 +128,8 @@ void IAGSEngine::AbortGame(const char *reason) {
const char *IAGSEngine::GetEngineVersion() {
return get_engine_version();
}
-void IAGSEngine::RegisterScriptFunction(const char *name, void *addy) {
- ccAddExternalPluginFunction(name, addy);
+void IAGSEngine::RegisterScriptFunction(const char *name, Plugins::ScriptContainer *instance) {
+ ccAddExternalPluginFunction(name, instance);
}
const char *IAGSEngine::GetGraphicsDriverID() {
if (_G(gfxDriver) == nullptr)
@@ -159,9 +156,6 @@ void IAGSEngine::RequestEventHook(int32 event) {
if (event >= AGSE_TOOHIGH)
quit("!IAGSEngine::RequestEventHook: invalid event requested");
- if (plugins[this->pluginId].onEvent == nullptr)
- quit("!IAGSEngine::RequestEventHook: no callback AGS_EngineOnEvent function exported from plugin");
-
if ((event & AGSE_SCRIPTDEBUG) &&
((plugins[this->pluginId].wantHook & AGSE_SCRIPTDEBUG) == 0)) {
pluginsWantingDebugHooks++;
@@ -172,7 +166,6 @@ void IAGSEngine::RequestEventHook(int32 event) {
quit("Plugin requested AUDIODECODE, which is no longer supported");
}
-
plugins[this->pluginId].wantHook |= event;
}
@@ -787,8 +780,7 @@ void pl_stop_plugins() {
for (a = 0; a < numPlugins; a++) {
if (plugins[a].available) {
- if (plugins[a].engineShutdown != nullptr)
- plugins[a].engineShutdown();
+ plugins[a]._plugin->AGS_EngineShutdown();
plugins[a].wantHook = 0;
if (plugins[a].savedata) {
free(plugins[a].savedata);
@@ -809,7 +801,7 @@ void pl_startup_plugins() {
_GP(engineExports).AGS_EngineStartup(&plugins[0].eiface);
if (plugins[i].available)
- plugins[i].engineStartup(&plugins[i].eiface);
+ plugins[i]._plugin->AGS_EngineStartup(&plugins[i].eiface);
}
}
@@ -817,7 +809,7 @@ NumberPtr pl_run_plugin_hooks(int event, NumberPtr data) {
int i, retval = 0;
for (i = 0; i < numPlugins; i++) {
if (plugins[i].wantHook & event) {
- retval = plugins[i].onEvent(event, data);
+ retval = plugins[i]._plugin->AGS_EngineOnEvent(event, data);
if (retval)
return retval;
}
@@ -830,7 +822,7 @@ int pl_run_plugin_debug_hooks(const char *scriptfile, int linenum) {
int i, retval = 0;
for (i = 0; i < numPlugins; i++) {
if (plugins[i].wantHook & AGSE_SCRIPTDEBUG) {
- retval = plugins[i].debugHook(scriptfile, linenum, 0);
+ retval = plugins[i]._plugin->AGS_EngineDebugHook(scriptfile, linenum, 0);
if (retval)
return retval;
}
@@ -840,9 +832,7 @@ int pl_run_plugin_debug_hooks(const char *scriptfile, int linenum) {
void pl_run_plugin_init_gfx_hooks(const char *driverName, void *data) {
for (int i = 0; i < numPlugins; i++) {
- if (plugins[i].initGfxHook != nullptr) {
- plugins[i].initGfxHook(driverName, data);
- }
+ plugins[i]._plugin->AGS_EngineInitGfx(driverName, data);
}
}
@@ -883,18 +873,6 @@ Engine::GameInitError pl_register_plugins(const std::vector<Shared::PluginInfo>
if (apl->library.Load(apl->filename)) {
AGS::Shared::Debug::Printf(kDbgMsg_Info, "Plugin '%s' loaded as '%s', resolving imports...", apl->filename, expect_filename.GetCStr());
- if (apl->library.GetFunctionAddress("AGS_PluginV2") == nullptr) {
- quitprintf("Plugin '%s' is an old incompatible version.", apl->filename);
- }
- apl->engineStartup = (void(*)(IAGSEngine *))apl->library.GetFunctionAddress("AGS_EngineStartup");
- apl->engineShutdown = (void(*)())apl->library.GetFunctionAddress("AGS_EngineShutdown");
-
- if (apl->engineStartup == nullptr) {
- quitprintf("Plugin '%s' is not a valid AGS plugin (no engine startup entry point)", apl->filename);
- }
- apl->onEvent = (int(*)(int, NumberPtr))apl->library.GetFunctionAddress("AGS_EngineOnEvent");
- apl->debugHook = (int(*)(const char *, int, int))apl->library.GetFunctionAddress("AGS_EngineDebugHook");
- apl->initGfxHook = (void(*)(const char *, void *))apl->library.GetFunctionAddress("AGS_EngineInitGfx");
} else {
AGS::Shared::Debug::Printf(kDbgMsg_Info, "Plugin '%s' could not be loaded (expected '%s')",
apl->filename, expect_filename.GetCStr());
diff --git a/engines/ags/plugins/ags_plugin.h b/engines/ags/plugins/ags_plugin.h
index 7a7592315e..6bf09594ce 100644
--- a/engines/ags/plugins/ags_plugin.h
+++ b/engines/ags/plugins/ags_plugin.h
@@ -31,9 +31,10 @@
#ifndef AGS_PLUGINS_AGS_PLUGIN_H
#define AGS_PLUGINS_AGS_PLUGIN_H
+#include "common/array.h"
#include "ags/shared/core/types.h"
#include "ags/shared/font/ags_font_renderer.h"
-#include "common/array.h"
+#include "ags/plugins/plugin_base.h"
namespace AGS3 {
@@ -318,7 +319,8 @@ public:
// get engine version
AGSIFUNC(const char *) GetEngineVersion();
// register a script function with the system
- AGSIFUNC(void) RegisterScriptFunction(const char *name, void *address);
+ AGSIFUNC(void) RegisterScriptFunction(const char *name,
+ Plugins::ScriptContainer *instance);
#ifdef WINDOWS_VERSION
// get game window handle
AGSIFUNC(HWND) GetWindowHandle();
diff --git a/engines/ags/plugins/ags_shell/ags_shell.h b/engines/ags/plugins/ags_shell/ags_shell.h
index d3ef3ff06a..bf00399d81 100644
--- a/engines/ags/plugins/ags_shell/ags_shell.h
+++ b/engines/ags/plugins/ags_shell/ags_shell.h
@@ -31,13 +31,13 @@ namespace AGSShell {
class AGSShell : public PluginBase {
private:
-static IAGSEngine *_engine;
+IAGSEngine *_engine;
private:
-static const char *AGS_GetPluginName();
-static void AGS_EngineStartup(IAGSEngine *lpEngine);
+const char *AGS_GetPluginName();
+void AGS_EngineStartup(IAGSEngine *lpEngine);
private:
-static void ShellExecute(ScriptMethodParams ¶ms);
+void ShellExecute(ScriptMethodParams ¶ms);
public:
AGSShell();
diff --git a/engines/ags/plugins/ags_snow_rain/ags_snow_rain.h b/engines/ags/plugins/ags_snow_rain/ags_snow_rain.h
index 0c948136bd..af15dd3f45 100644
--- a/engines/ags/plugins/ags_snow_rain/ags_snow_rain.h
+++ b/engines/ags/plugins/ags_snow_rain/ags_snow_rain.h
@@ -41,37 +41,37 @@ extern int32 _screenColorDepth;
*/
class AGSSnowRain : public PluginBase {
private:
-static Weather *_rain;
-static Weather *_snow;
+Weather *_rain;
+Weather *_snow;
private:
-static const char *AGS_GetPluginName();
-static void AGS_EngineStartup(IAGSEngine *lpEngine);
-static void AGS_EngineShutdown();
-static int64 AGS_EngineOnEvent(int event, NumberPtr data);
+const char *AGS_GetPluginName();
+void AGS_EngineStartup(IAGSEngine *lpEngine);
+void AGS_EngineShutdown();
+int64 AGS_EngineOnEvent(int event, NumberPtr data);
private:
-static void srSetWindSpeed(ScriptMethodParams ¶ms);
-static void srSetBaseline(ScriptMethodParams ¶ms);
-static void srSetSnowDriftRange(ScriptMethodParams ¶ms);
-static void srSetSnowDriftSpeed(ScriptMethodParams ¶ms);
-static void srChangeSnowAmount(ScriptMethodParams ¶ms);
-static void srSetSnowView(ScriptMethodParams ¶ms);
-static void srSetSnowDefaultView(ScriptMethodParams ¶ms);
-static void srSetSnowTransparency(ScriptMethodParams ¶ms);
-static void srSetSnowWindSpeed(ScriptMethodParams ¶ms);
-static void srSetSnowBaseline(ScriptMethodParams ¶ms);
-static void srSetSnowAmount(ScriptMethodParams ¶ms);
-static void srSetSnowFallSpeed(ScriptMethodParams ¶ms);
-static void srSetRainDriftRange(ScriptMethodParams ¶ms);
-static void srSetRainDriftSpeed(ScriptMethodParams ¶ms);
-static void srChangeRainAmount(ScriptMethodParams ¶ms);
-static void srSetRainView(ScriptMethodParams ¶ms);
-static void srSetRainDefaultView(ScriptMethodParams ¶ms);
-static void srSetRainTransparency(ScriptMethodParams ¶ms);
-static void srSetRainWindSpeed(ScriptMethodParams ¶ms);
-static void srSetRainBaseline(ScriptMethodParams ¶ms);
-static void srSetRainAmount(ScriptMethodParams ¶ms);
-static void srSetRainFallSpeed(ScriptMethodParams ¶ms);
+void srSetWindSpeed(ScriptMethodParams ¶ms);
+void srSetBaseline(ScriptMethodParams ¶ms);
+void srSetSnowDriftRange(ScriptMethodParams ¶ms);
+void srSetSnowDriftSpeed(ScriptMethodParams ¶ms);
+void srChangeSnowAmount(ScriptMethodParams ¶ms);
+void srSetSnowView(ScriptMethodParams ¶ms);
+void srSetSnowDefaultView(ScriptMethodParams ¶ms);
+void srSetSnowTransparency(ScriptMethodParams ¶ms);
+void srSetSnowWindSpeed(ScriptMethodParams ¶ms);
+void srSetSnowBaseline(ScriptMethodParams ¶ms);
+void srSetSnowAmount(ScriptMethodParams ¶ms);
+void srSetSnowFallSpeed(ScriptMethodParams ¶ms);
+void srSetRainDriftRange(ScriptMethodParams ¶ms);
+void srSetRainDriftSpeed(ScriptMethodParams ¶ms);
+void srChangeRainAmount(ScriptMethodParams ¶ms);
+void srSetRainView(ScriptMethodParams ¶ms);
+void srSetRainDefaultView(ScriptMethodParams ¶ms);
+void srSetRainTransparency(ScriptMethodParams ¶ms);
+void srSetRainWindSpeed(ScriptMethodParams ¶ms);
+void srSetRainBaseline(ScriptMethodParams ¶ms);
+void srSetRainAmount(ScriptMethodParams ¶ms);
+void srSetRainFallSpeed(ScriptMethodParams ¶ms);
public:
AGSSnowRain();
};
diff --git a/engines/ags/plugins/ags_sock/ags_sock.h b/engines/ags/plugins/ags_sock/ags_sock.h
index e0d2478803..8dcbc15f16 100644
--- a/engines/ags/plugins/ags_sock/ags_sock.h
+++ b/engines/ags/plugins/ags_sock/ags_sock.h
@@ -31,268 +31,268 @@ namespace AGSSock {
class AGSSock : public PluginBase {
private:
- static IAGSEngine *_engine;
- static Common::String *_text;
+ IAGSEngine *_engine;
+ Common::String *_text;
private:
- static const char *AGS_GetPluginName();
- static void AGS_EngineStartup(IAGSEngine *engine);
+ const char *AGS_GetPluginName();
+ void AGS_EngineStartup(IAGSEngine *engine) override;
/**
* Creates a new data container with specified size
* (and what character to fill it with)
*/
- static void SockData_Create(ScriptMethodParams ¶ms);
+ void SockData_Create(ScriptMethodParams ¶ms);
/**
* Creates a new data container of zero size
*/
- static void SockData_CreateEmpty(ScriptMethodParams ¶ms);
+ void SockData_CreateEmpty(ScriptMethodParams ¶ms);
/**
* Creates a data container from a string
*/
- static void SockData_CreateFromString(ScriptMethodParams ¶ms);
+ void SockData_CreateFromString(ScriptMethodParams ¶ms);
/**
* Gets the size property
*/
- static void SockData_get_Size(ScriptMethodParams ¶ms);
+ void SockData_get_Size(ScriptMethodParams ¶ms);
/**
* Sets the size property
*/
- static void SockData_set_Size(ScriptMethodParams ¶ms);
+ void SockData_set_Size(ScriptMethodParams ¶ms);
/**
* Gets the chars array
*/
- static void SockData_geti_Chars(ScriptMethodParams ¶ms);
+ void SockData_geti_Chars(ScriptMethodParams ¶ms);
/**
* Sets the chars array
*/
- static void SockData_seti_Chars(ScriptMethodParams ¶ms);
+ void SockData_seti_Chars(ScriptMethodParams ¶ms);
/**
* Makes and returns a string from the data object.
* (Warning: anything after a null character will be truncated)
*/
- static void SockData_AsString(ScriptMethodParams ¶ms);
+ void SockData_AsString(ScriptMethodParams ¶ms);
/**
* Removes all the data from a socket data object,
* reducing it's size to zero
*/
- static void SockData_Clear(ScriptMethodParams ¶ms);
+ void SockData_Clear(ScriptMethodParams ¶ms);
/**
* Creates an empty socket address. (advanced: set type
* to IPv6 if you're using IPv6)
*/
- static void SockAddr_Create(ScriptMethodParams ¶ms);
+ void SockAddr_Create(ScriptMethodParams ¶ms);
/**
* Creates a socket address from a string.
* (for example: "https://www.scummvm.org/"
*/
- static void SockAddr_CreateFromString(ScriptMethodParams ¶ms);
+ void SockAddr_CreateFromString(ScriptMethodParams ¶ms);
/**
* Creates a socket address from raw data. (advanced)
*/
- static void SockAddr_CreateFromData(ScriptMethodParams ¶ms);
+ void SockAddr_CreateFromData(ScriptMethodParams ¶ms);
/**
* Creates a socket address from an IP-address.
* (for example: "127.0.0.1")
*/
- static void SockAddr_CreateIP(ScriptMethodParams ¶ms);
+ void SockAddr_CreateIP(ScriptMethodParams ¶ms);
/**
* Creates a socket address from an IPv6-address.
* (for example: "::1")
*/
- static void SockAddr_CreateIPv6(ScriptMethodParams ¶ms);
+ void SockAddr_CreateIPv6(ScriptMethodParams ¶ms);
/**
* Gets the value of the port property
*/
- static void SockAddr_get_Port(ScriptMethodParams ¶ms);
+ void SockAddr_get_Port(ScriptMethodParams ¶ms);
/**
* Sets the value of the port property
*/
- static void SockAddr_set_Port(ScriptMethodParams ¶ms);
+ void SockAddr_set_Port(ScriptMethodParams ¶ms);
/**
* Gets the value of the address property
*/
- static void SockAddr_get_Address(ScriptMethodParams ¶ms);
+ void SockAddr_get_Address(ScriptMethodParams ¶ms);
/**
* Sets the value of the address property
*/
- static void SockAddr_set_Address(ScriptMethodParams ¶ms);
+ void SockAddr_set_Address(ScriptMethodParams ¶ms);
/**
* Gets the value of the IP property
*/
- static void SockAddr_get_IP(ScriptMethodParams ¶ms);
+ void SockAddr_get_IP(ScriptMethodParams ¶ms);
/**
* Sets the value of the IP property
*/
- static void SockAddr_set_IP(ScriptMethodParams ¶ms);
+ void SockAddr_set_IP(ScriptMethodParams ¶ms);
/**
* Returns a SockData object that contains the raw data
* of the socket address. (advanced)
*/
- static void SockAddr_GetData(ScriptMethodParams ¶ms);
+ void SockAddr_GetData(ScriptMethodParams ¶ms);
/**
* Creates a socket for the specified protocol. (advanced)
*/
- static void Socket_Create(ScriptMethodParams ¶ms);
+ void Socket_Create(ScriptMethodParams ¶ms);
/**
* Creates a UDP socket. (unrealiable, connectionless, message based)
*/
- static void Socket_CreateUDP(ScriptMethodParams ¶ms);
+ void Socket_CreateUDP(ScriptMethodParams ¶ms);
/**
* Creates a TCP socket. (reliable, connection based, streaming)
*/
- static void Socket_CreateTCP(ScriptMethodParams ¶ms);
+ void Socket_CreateTCP(ScriptMethodParams ¶ms);
/**
* Creates a UDP socket for IPv6. (when in doubt use CreateUDP)
*/
- static void Socket_CreateUDPv6(ScriptMethodParams ¶ms);
+ void Socket_CreateUDPv6(ScriptMethodParams ¶ms);
/**
* Creates a TCP socket for IPv6. (when in doubt use CreateTCP)
*/
- static void Socket_CreateTCPv6(ScriptMethodParams ¶ms);
+ void Socket_CreateTCPv6(ScriptMethodParams ¶ms);
/**
* Gets the value of the Tag property
*/
- static void Socket_get_Tag(ScriptMethodParams ¶ms);
+ void Socket_get_Tag(ScriptMethodParams ¶ms);
/**
* Sets the value of the Tag property
*/
- static void Socket_set_Tag(ScriptMethodParams ¶ms);
+ void Socket_set_Tag(ScriptMethodParams ¶ms);
/**
* Gets the value of the Local property
*/
- static void Socket_get_Local(ScriptMethodParams ¶ms);
+ void Socket_get_Local(ScriptMethodParams ¶ms);
/**
* Gets the value of the Remote property
*/
- static void Socket_get_Remote(ScriptMethodParams ¶ms);
+ void Socket_get_Remote(ScriptMethodParams ¶ms);
/**
* Gets the value of the Value property
*/
- static void Socket_get_Valid(ScriptMethodParams ¶ms);
+ void Socket_get_Valid(ScriptMethodParams ¶ms);
/**
* Returns the last error observed from this socket
* as an human readable string
*/
- static void Socket_ErrorString(ScriptMethodParams ¶ms);
+ void Socket_ErrorString(ScriptMethodParams ¶ms);
/**
* Binds the socket to a local address. (generally used
* before listening)
*/
- static void Socket_Bind(ScriptMethodParams ¶ms);
+ void Socket_Bind(ScriptMethodParams ¶ms);
/**
* Makes a socket listen for incoming connection requests.
* (TCP only) Backlog specifies how many requests can be
* queued. (optional)
*/
- static void Socket_Listen(ScriptMethodParams ¶ms);
+ void Socket_Listen(ScriptMethodParams ¶ms);
/**
* Makes a socket connect to a remote host. (for UDP it
* will simply bind to a remote address) Defaults to sync
* which makes it wait; see the manual for async use.
*/
- static void Socket_Connect(ScriptMethodParams ¶ms);
+ void Socket_Connect(ScriptMethodParams ¶ms);
/**
* Accepts a connection request and returns the resulting
* socket when successful. (TCP only)
*/
- static void Socket_Accept(ScriptMethodParams ¶ms);
+ void Socket_Accept(ScriptMethodParams ¶ms);
/**
* Closes the socket. (you can still receive until socket
* is marked invalid
*/
- static void Socket_Close(ScriptMethodParams ¶ms);
+ void Socket_Close(ScriptMethodParams ¶ms);
/**
* Sends a string to the remote host. Returns whether
* successful. (no error means: try again later)
*/
- static void Socket_Send(ScriptMethodParams ¶ms);
+ void Socket_Send(ScriptMethodParams ¶ms);
/**
* Sends a string to the specified remote host. (UDP only)
*/
- static void Socket_SendTo(ScriptMethodParams ¶ms);
+ void Socket_SendTo(ScriptMethodParams ¶ms);
/**
* Receives a string from the remote host. (no error
* means: try again later)
*/
- static void Socket_Recv(ScriptMethodParams ¶ms);
+ void Socket_Recv(ScriptMethodParams ¶ms);
/**
* Receives a string from an unspecified host. The given
* address object will contain the remote address. (UDP only)
*/
- static void Socket_RecvFrom(ScriptMethodParams ¶ms);
+ void Socket_RecvFrom(ScriptMethodParams ¶ms);
/**
* Sends raw data to the remote host. Returns whether
* successful. (no error means: try again later
*/
- static void Socket_SendData(ScriptMethodParams ¶ms);
+ void Socket_SendData(ScriptMethodParams ¶ms);
/**
* Sends raw data to the specified remote host. (UDP only)
*/
- static void Socket_SendDataTo(ScriptMethodParams ¶ms);
+ void Socket_SendDataTo(ScriptMethodParams ¶ms);
/**
* Receives raw data from the remote host. (no error
* means: try again later
*/
- static void Socket_RecvData(ScriptMethodParams ¶ms);
+ void Socket_RecvData(ScriptMethodParams ¶ms);
/**
* Receives raw data from an unspecified host. The given
* address object will contain the remote address. (UDP only)
*/
- static void Socket_RecvDataFrom(ScriptMethodParams ¶ms);
+ void Socket_RecvDataFrom(ScriptMethodParams ¶ms);
/**
* Gets a socket option. (advanced)
*/
- static void Socket_GetOption(ScriptMethodParams ¶ms);
+ void Socket_GetOption(ScriptMethodParams ¶ms);
/**
* Sets a socket option. (advanced)
*/
- static void Socket_SetOption(ScriptMethodParams ¶ms);
+ void Socket_SetOption(ScriptMethodParams ¶ms);
public:
AGSSock();
diff --git a/engines/ags/plugins/ags_sprite_font/ags_sprite_font.h b/engines/ags/plugins/ags_sprite_font/ags_sprite_font.h
index 1de93a1ff8..2029a4d528 100644
--- a/engines/ags/plugins/ags_sprite_font/ags_sprite_font.h
+++ b/engines/ags/plugins/ags_sprite_font/ags_sprite_font.h
@@ -37,21 +37,21 @@ namespace AGSSpriteFont {
class AGSSpriteFont : public PluginBase {
protected:
-static IAGSEngine *_engine;
-static SpriteFontRenderer *_fontRenderer;
-static VariableWidthSpriteFontRenderer *_vWidthRenderer;
+IAGSEngine *_engine;
+SpriteFontRenderer *_fontRenderer;
+VariableWidthSpriteFontRenderer *_vWidthRenderer;
protected:
-static const char *AGS_GetPluginName();
-static void AGS_EngineStartup(IAGSEngine *lpEngine);
-static void AGS_EngineShutdown();
+const char *AGS_GetPluginName();
+void AGS_EngineStartup(IAGSEngine *lpEngine);
+void AGS_EngineShutdown();
private:
-static void SetSpriteFont(ScriptMethodParams ¶ms);
-static void SetVariableSpriteFont(ScriptMethodParams ¶ms);
-static void SetGlyph(ScriptMethodParams ¶ms);
-static void SetSpacing(ScriptMethodParams ¶ms);
-static void SetLineHeightAdjust(ScriptMethodParams ¶ms);
+void SetSpriteFont(ScriptMethodParams ¶ms);
+void SetVariableSpriteFont(ScriptMethodParams ¶ms);
+void SetGlyph(ScriptMethodParams ¶ms);
+void SetSpacing(ScriptMethodParams ¶ms);
+void SetLineHeightAdjust(ScriptMethodParams ¶ms);
public:
AGSSpriteFont();
diff --git a/engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.h b/engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.h
index 5c89f13b22..c1bb7dc2e4 100644
--- a/engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.h
+++ b/engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.h
@@ -31,9 +31,9 @@ namespace AGSSpriteFont {
class AGSSpriteFontClifftopGames : public AGSSpriteFont {
private:
-static void AGS_EngineStartup(IAGSEngine *engine);
+void AGS_EngineStartup(IAGSEngine *engine) override;
-static void SetLineHeightAdjust(ScriptMethodParams ¶ms);
+void SetLineHeightAdjust(ScriptMethodParams ¶ms);
public:
AGSSpriteFontClifftopGames();
diff --git a/engines/ags/plugins/ags_tcp_ip/ags_tcp_ip.h b/engines/ags/plugins/ags_tcp_ip/ags_tcp_ip.h
index 13f046fb98..f0bb6af2b7 100644
--- a/engines/ags/plugins/ags_tcp_ip/ags_tcp_ip.h
+++ b/engines/ags/plugins/ags_tcp_ip/ags_tcp_ip.h
@@ -32,8 +32,8 @@ namespace AGSTcpIp {
class AGSTcpIp : public PluginBase {
private:
-static const char *AGS_GetPluginName();
-static void AGS_EngineStartup(IAGSEngine *engine);
+const char *AGS_GetPluginName();
+void AGS_EngineStartup(IAGSEngine *engine) override;
public:
AGSTcpIp();
diff --git a/engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.h b/engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.h
index c8d380c325..a8a0e0857f 100644
--- a/engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.h
+++ b/engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.h
@@ -31,22 +31,22 @@ namespace AGSWadjetUtil {
class AGSWadjetUtil : public PluginBase {
private:
-static IAGSEngine *_engine;
+IAGSEngine *_engine;
private:
-static const char *AGS_GetPluginName();
-static void AGS_EngineStartup(IAGSEngine *lpEngine);
+const char *AGS_GetPluginName();
+void AGS_EngineStartup(IAGSEngine *lpEngine);
private:
-static void IsOnPhone(ScriptMethodParams ¶ms);
-static void FakeKeypress(ScriptMethodParams ¶ms);
-static void IosSetAchievementValue(ScriptMethodParams ¶ms);
-static void IosGetAchievementValue(ScriptMethodParams ¶ms);
-static void IosShowAchievements(ScriptMethodParams ¶ms);
-static void IosResetAchievements(ScriptMethodParams ¶ms);
-static void MobileGetAchievement(ScriptMethodParams ¶ms);
-static void MobileSetAchievement(ScriptMethodParams ¶ms);
-static void MobileShowAchievements(ScriptMethodParams ¶ms);
-static void MobileResetAchievements(ScriptMethodParams ¶ms);
+void IsOnPhone(ScriptMethodParams ¶ms);
+void FakeKeypress(ScriptMethodParams ¶ms);
+void IosSetAchievementValue(ScriptMethodParams ¶ms);
+void IosGetAchievementValue(ScriptMethodParams ¶ms);
+void IosShowAchievements(ScriptMethodParams ¶ms);
+void IosResetAchievements(ScriptMethodParams ¶ms);
+void MobileGetAchievement(ScriptMethodParams ¶ms);
+void MobileSetAchievement(ScriptMethodParams ¶ms);
+void MobileShowAchievements(ScriptMethodParams ¶ms);
+void MobileResetAchievements(ScriptMethodParams ¶ms);
public:
AGSWadjetUtil();
diff --git a/engines/ags/plugins/ags_waves/ags_waves.h b/engines/ags/plugins/ags_waves/ags_waves.h
index 934e81e951..0e930a982f 100644
--- a/engines/ags/plugins/ags_waves/ags_waves.h
+++ b/engines/ags/plugins/ags_waves/ags_waves.h
@@ -31,61 +31,61 @@ namespace AGSWaves {
class AGSWaves : public PluginBase {
private:
- static IAGSEngine *_engine;
- static const char *AGS_GetPluginName();
- static void AGS_EngineStartup(IAGSEngine *engine);
+ IAGSEngine *_engine;
+ const char *AGS_GetPluginName();
+ void AGS_EngineStartup(IAGSEngine *engine) override;
private:
- static void DrawScreenEffect(ScriptMethodParams ¶ms);
- static void SFX_Play(ScriptMethodParams ¶ms);
- static void SFX_SetVolume(ScriptMethodParams ¶ms);
- static void SFX_GetVolume(ScriptMethodParams ¶ms);
- static void Music_Play(ScriptMethodParams ¶ms);
- static void Music_GetVolume(ScriptMethodParams ¶ms);
- static void Music_SetVolume(ScriptMethodParams ¶ms);
- static void SFX_Stop(ScriptMethodParams ¶ms);
- static void SFX_SetPosition(ScriptMethodParams ¶ms);
- static void SFX_SetGlobalVolume(ScriptMethodParams ¶ms);
- static void Load_SFX(ScriptMethodParams ¶ms);
- static void Audio_Apply_Filter(ScriptMethodParams ¶ms);
- static void Audio_Remove_Filter(ScriptMethodParams ¶ms);
- static void SFX_AllowOverlap(ScriptMethodParams ¶ms);
- static void SFX_Filter(ScriptMethodParams ¶ms);
- static void DrawBlur(ScriptMethodParams ¶ms);
- static void DrawTunnel(ScriptMethodParams ¶ms);
- static void DrawCylinder(ScriptMethodParams ¶ms);
- static void DrawForceField(ScriptMethodParams ¶ms);
- static void Grayscale(ScriptMethodParams ¶ms);
- static void ReadWalkBehindIntoSprite(ScriptMethodParams ¶ms);
- static void AdjustSpriteFont(ScriptMethodParams ¶ms);
- static void SpriteGradient(ScriptMethodParams ¶ms);
- static void Outline(ScriptMethodParams ¶ms);
- static void OutlineOnly(ScriptMethodParams ¶ms);
- static void SaveVariable(ScriptMethodParams ¶ms);
- static void ReadVariable(ScriptMethodParams ¶ms);
- static void GameDoOnceOnly(ScriptMethodParams ¶ms);
- static void SetGDState(ScriptMethodParams ¶ms);
- static void GetGDState(ScriptMethodParams ¶ms);
- static void ResetAllGD(ScriptMethodParams ¶ms);
- static void SpriteSkew(ScriptMethodParams ¶ms);
- static void FireUpdate(ScriptMethodParams ¶ms);
- static void WindUpdate(ScriptMethodParams ¶ms);
- static void SetWindValues(ScriptMethodParams ¶ms);
- static void ReturnWidth(ScriptMethodParams ¶ms);
- static void ReturnHeight(ScriptMethodParams ¶ms);
- static void ReturnNewHeight(ScriptMethodParams ¶ms);
- static void ReturnNewWidth(ScriptMethodParams ¶ms);
- static void Warper(ScriptMethodParams ¶ms);
- static void SetWarper(ScriptMethodParams ¶ms);
- static void RainUpdate(ScriptMethodParams ¶ms);
- static void BlendTwoSprites(ScriptMethodParams ¶ms);
- static void Blend(ScriptMethodParams ¶ms);
- static void Dissolve(ScriptMethodParams ¶ms);
- static void ReverseTransparency(ScriptMethodParams ¶ms);
- static void NoiseCreator(ScriptMethodParams ¶ms);
- static void TintProper(ScriptMethodParams ¶ms);
- static void GetWalkbehindBaserine(ScriptMethodParams ¶ms);
- static void SetWalkbehindBaserine(ScriptMethodParams ¶ms);
+ void DrawScreenEffect(ScriptMethodParams ¶ms);
+ void SFX_Play(ScriptMethodParams ¶ms);
+ void SFX_SetVolume(ScriptMethodParams ¶ms);
+ void SFX_GetVolume(ScriptMethodParams ¶ms);
+ void Music_Play(ScriptMethodParams ¶ms);
+ void Music_GetVolume(ScriptMethodParams ¶ms);
+ void Music_SetVolume(ScriptMethodParams ¶ms);
+ void SFX_Stop(ScriptMethodParams ¶ms);
+ void SFX_SetPosition(ScriptMethodParams ¶ms);
+ void SFX_SetGlobalVolume(ScriptMethodParams ¶ms);
+ void Load_SFX(ScriptMethodParams ¶ms);
+ void Audio_Apply_Filter(ScriptMethodParams ¶ms);
+ void Audio_Remove_Filter(ScriptMethodParams ¶ms);
+ void SFX_AllowOverlap(ScriptMethodParams ¶ms);
+ void SFX_Filter(ScriptMethodParams ¶ms);
+ void DrawBlur(ScriptMethodParams ¶ms);
+ void DrawTunnel(ScriptMethodParams ¶ms);
+ void DrawCylinder(ScriptMethodParams ¶ms);
+ void DrawForceField(ScriptMethodParams ¶ms);
+ void Grayscale(ScriptMethodParams ¶ms);
+ void ReadWalkBehindIntoSprite(ScriptMethodParams ¶ms);
+ void AdjustSpriteFont(ScriptMethodParams ¶ms);
+ void SpriteGradient(ScriptMethodParams ¶ms);
+ void Outline(ScriptMethodParams ¶ms);
+ void OutlineOnly(ScriptMethodParams ¶ms);
+ void SaveVariable(ScriptMethodParams ¶ms);
+ void ReadVariable(ScriptMethodParams ¶ms);
+ void GameDoOnceOnly(ScriptMethodParams ¶ms);
+ void SetGDState(ScriptMethodParams ¶ms);
+ void GetGDState(ScriptMethodParams ¶ms);
+ void ResetAllGD(ScriptMethodParams ¶ms);
+ void SpriteSkew(ScriptMethodParams ¶ms);
+ void FireUpdate(ScriptMethodParams ¶ms);
+ void WindUpdate(ScriptMethodParams ¶ms);
+ void SetWindValues(ScriptMethodParams ¶ms);
+ void ReturnWidth(ScriptMethodParams ¶ms);
+ void ReturnHeight(ScriptMethodParams ¶ms);
+ void ReturnNewHeight(ScriptMethodParams ¶ms);
+ void ReturnNewWidth(ScriptMethodParams ¶ms);
+ void Warper(ScriptMethodParams ¶ms);
+ void SetWarper(ScriptMethodParams ¶ms);
+ void RainUpdate(ScriptMethodParams ¶ms);
+ void BlendTwoSprites(ScriptMethodParams ¶ms);
+ void Blend(ScriptMethodParams ¶ms);
+ void Dissolve(ScriptMethodParams ¶ms);
+ void ReverseTransparency(ScriptMethodParams ¶ms);
+ void NoiseCreator(ScriptMethodParams ¶ms);
+ void TintProper(ScriptMethodParams ¶ms);
+ void GetWalkbehindBaserine(ScriptMethodParams ¶ms);
+ void SetWalkbehindBaserine(ScriptMethodParams ¶ms);
public:
AGSWaves();
};
diff --git a/engines/ags/plugins/core/audio_channel.cpp b/engines/ags/plugins/core/audio_channel.cpp
index c3ea408ac3..60e96c32ef 100644
--- a/engines/ags/plugins/core/audio_channel.cpp
+++ b/engines/ags/plugins/core/audio_channel.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void AudioChannel::AGS_EngineStartup(IAGSEngine *engine) {
+/*
SCRIPT_METHOD_EXT(AudioChannel::Seek^1, Seek);
SCRIPT_METHOD_EXT(AudioChannel::SetRoomLocation^2, SetRoomLocation);
SCRIPT_METHOD_EXT(AudioChannel::Stop^0, Stop);
@@ -41,6 +42,7 @@ void AudioChannel::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(AudioChannel::get_PositionMs, GetPositionMs);
SCRIPT_METHOD_EXT(AudioChannel::get_Volume, GetVolume);
SCRIPT_METHOD_EXT(AudioChannel::set_Volume, SetVolume);
+ */
}
void AudioChannel::Seek(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/audio_channel.h b/engines/ags/plugins/core/audio_channel.h
index 175989eadd..e5f85096ea 100644
--- a/engines/ags/plugins/core/audio_channel.h
+++ b/engines/ags/plugins/core/audio_channel.h
@@ -23,29 +23,31 @@
#ifndef AGS_PLUGINS_CORE_AUDIO_CHANNEL_H
#define AGS_PLUGINS_CORE_AUDIO_CHANNEL_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class AudioChannel : public ScriptContainer {
+ SCRIPT_HASH(AudioChannel)
public:
- static void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~AudioChannel() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void Seek(ScriptMethodParams ¶ms);
- static void SetRoomLocation(ScriptMethodParams ¶ms);
- static void Stop(ScriptMethodParams ¶ms);
- static void GetID(ScriptMethodParams ¶ms);
- static void GetIsPlaying(ScriptMethodParams ¶ms);
- static void GetLengthMs(ScriptMethodParams ¶ms);
- static void GetPanning(ScriptMethodParams ¶ms);
- static void SetPanning(ScriptMethodParams ¶ms);
- static void GetPlayingClip(ScriptMethodParams ¶ms);
- static void GetPosition(ScriptMethodParams ¶ms);
- static void GetPositionMs(ScriptMethodParams ¶ms);
- static void GetVolume(ScriptMethodParams ¶ms);
- static void SetVolume(ScriptMethodParams ¶ms);
+ void Seek(ScriptMethodParams ¶ms);
+ void SetRoomLocation(ScriptMethodParams ¶ms);
+ void Stop(ScriptMethodParams ¶ms);
+ void GetID(ScriptMethodParams ¶ms);
+ void GetIsPlaying(ScriptMethodParams ¶ms);
+ void GetLengthMs(ScriptMethodParams ¶ms);
+ void GetPanning(ScriptMethodParams ¶ms);
+ void SetPanning(ScriptMethodParams ¶ms);
+ void GetPlayingClip(ScriptMethodParams ¶ms);
+ void GetPosition(ScriptMethodParams ¶ms);
+ void GetPositionMs(ScriptMethodParams ¶ms);
+ void GetVolume(ScriptMethodParams ¶ms);
+ void SetVolume(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/audio_clip.cpp b/engines/ags/plugins/core/audio_clip.cpp
index a522119a1b..7da0ac4ab6 100644
--- a/engines/ags/plugins/core/audio_clip.cpp
+++ b/engines/ags/plugins/core/audio_clip.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void AudioClip::AGS_EngineStartup(IAGSEngine *engine) {
+/*
SCRIPT_METHOD_EXT(AudioClip::Play^2, Play);
SCRIPT_METHOD_EXT(AudioClip::PlayFrom^3, PlayFrom);
SCRIPT_METHOD_EXT(AudioClip::PlayQueued^2, PlayQueued);
@@ -35,6 +36,7 @@ void AudioClip::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(AudioClip::get_FileType, GetFileType);
SCRIPT_METHOD_EXT(AudioClip::get_IsAvailable, GetIsAvailable);
SCRIPT_METHOD_EXT(AudioClip::get_Type, GetType);
+ */
}
void AudioClip::Play(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/audio_clip.h b/engines/ags/plugins/core/audio_clip.h
index 133b748ec8..be8ea3d54a 100644
--- a/engines/ags/plugins/core/audio_clip.h
+++ b/engines/ags/plugins/core/audio_clip.h
@@ -23,23 +23,25 @@
#ifndef AGS_PLUGINS_CORE_AUDIO_CLIP_H
#define AGS_PLUGINS_CORE_AUDIO_CLIP_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class AudioClip : public ScriptContainer {
+ SCRIPT_HASH(AudioClip)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~AudioClip() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void Play(ScriptMethodParams ¶ms);
- static void PlayFrom(ScriptMethodParams ¶ms);
- static void PlayQueued(ScriptMethodParams ¶ms);
- static void Stop(ScriptMethodParams ¶ms);
- static void GetFileType(ScriptMethodParams ¶ms);
- static void GetIsAvailable(ScriptMethodParams ¶ms);
- static void GetType(ScriptMethodParams ¶ms);
+ void Play(ScriptMethodParams ¶ms);
+ void PlayFrom(ScriptMethodParams ¶ms);
+ void PlayQueued(ScriptMethodParams ¶ms);
+ void Stop(ScriptMethodParams ¶ms);
+ void GetFileType(ScriptMethodParams ¶ms);
+ void GetIsAvailable(ScriptMethodParams ¶ms);
+ void GetType(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/button.cpp b/engines/ags/plugins/core/button.cpp
index 6ed9f00b42..a0c5727c54 100644
--- a/engines/ags/plugins/core/button.cpp
+++ b/engines/ags/plugins/core/button.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void Button::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(Button::Animate^4, Animate);
SCRIPT_METHOD_EXT(Button::GetText^1, GetText);
SCRIPT_METHOD_EXT(Button::SetText^1, SetText);
@@ -46,6 +47,7 @@ void Button::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Button::set_Text, SetText);
SCRIPT_METHOD_EXT(Button::get_TextColor, GetTextColor);
SCRIPT_METHOD_EXT(Button::set_TextColor, SetTextColor);
+ */
}
void Button::Animate(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/button.h b/engines/ags/plugins/core/button.h
index d8661ed17d..8788b12dee 100644
--- a/engines/ags/plugins/core/button.h
+++ b/engines/ags/plugins/core/button.h
@@ -23,33 +23,35 @@
#ifndef AGS_PLUGINS_CORE_BUTTON_H
#define AGS_PLUGINS_CORE_BUTTON_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Button : public ScriptContainer {
+ SCRIPT_HASH(Button)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~Button() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void Animate(ScriptMethodParams ¶ms);
- static void GetText(ScriptMethodParams ¶ms);
- static void SetText(ScriptMethodParams ¶ms);
- static void GetClipImage(ScriptMethodParams ¶ms);
- static void SetClipImage(ScriptMethodParams ¶ms);
- static void GetFont(ScriptMethodParams ¶ms);
- static void SetFont(ScriptMethodParams ¶ms);
- static void GetGraphic(ScriptMethodParams ¶ms);
- static void GetMouseOverGraphic(ScriptMethodParams ¶ms);
- static void SetMouseOverGraphic(ScriptMethodParams ¶ms);
- static void GetNormalGraphic(ScriptMethodParams ¶ms);
- static void SetNormalGraphic(ScriptMethodParams ¶ms);
- static void GetPushedGraphic(ScriptMethodParams ¶ms);
- static void SetPushedGraphic(ScriptMethodParams ¶ms);
- static void GetText_New(ScriptMethodParams ¶ms);
- static void GetTextColor(ScriptMethodParams ¶ms);
- static void SetTextColor(ScriptMethodParams ¶ms);
+ void Animate(ScriptMethodParams ¶ms);
+ void GetText(ScriptMethodParams ¶ms);
+ void SetText(ScriptMethodParams ¶ms);
+ void GetClipImage(ScriptMethodParams ¶ms);
+ void SetClipImage(ScriptMethodParams ¶ms);
+ void GetFont(ScriptMethodParams ¶ms);
+ void SetFont(ScriptMethodParams ¶ms);
+ void GetGraphic(ScriptMethodParams ¶ms);
+ void GetMouseOverGraphic(ScriptMethodParams ¶ms);
+ void SetMouseOverGraphic(ScriptMethodParams ¶ms);
+ void GetNormalGraphic(ScriptMethodParams ¶ms);
+ void SetNormalGraphic(ScriptMethodParams ¶ms);
+ void GetPushedGraphic(ScriptMethodParams ¶ms);
+ void SetPushedGraphic(ScriptMethodParams ¶ms);
+ void GetText_New(ScriptMethodParams ¶ms);
+ void GetTextColor(ScriptMethodParams ¶ms);
+ void SetTextColor(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/character.cpp b/engines/ags/plugins/core/character.cpp
index 3de93a6e90..90b673e512 100644
--- a/engines/ags/plugins/core/character.cpp
+++ b/engines/ags/plugins/core/character.cpp
@@ -30,6 +30,7 @@ namespace Plugins {
namespace Core {
void Character::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(Character::AddInventory^2, AddInventory);
SCRIPT_METHOD_EXT(Character::AddWaypoint^2, AddWaypoint);
SCRIPT_METHOD_EXT(Character::Animate^5, Animate);
@@ -169,6 +170,7 @@ void Character::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Character::set_Z, SetZ);
SCRIPT_METHOD_EXT(Character::get_z, GetZ);
SCRIPT_METHOD_EXT(Character::set_z, SetZ);
+ */
}
void Character::AddInventory(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/character.h b/engines/ags/plugins/core/character.h
index a56132f01a..0fa02b9273 100644
--- a/engines/ags/plugins/core/character.h
+++ b/engines/ags/plugins/core/character.h
@@ -23,141 +23,143 @@
#ifndef AGS_PLUGINS_CORE_CHARACTER_H
#define AGS_PLUGINS_CORE_CHARACTER_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Character : public ScriptContainer {
+ SCRIPT_HASH(Character)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~Character() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void AddInventory(ScriptMethodParams ¶ms);
- static void AddWaypoint(ScriptMethodParams ¶ms);
- static void Animate(ScriptMethodParams ¶ms);
- static void ChangeRoom(ScriptMethodParams ¶ms);
- static void ChangeRoomAutoPosition(ScriptMethodParams ¶ms);
- static void ChangeView(ScriptMethodParams ¶ms);
- static void FaceCharacter(ScriptMethodParams ¶ms);
- static void FaceDirection(ScriptMethodParams ¶ms);
- static void FaceLocation(ScriptMethodParams ¶ms);
- static void FaceObject(ScriptMethodParams ¶ms);
- static void FollowCharacter(ScriptMethodParams ¶ms);
- static void GetProperty(ScriptMethodParams ¶ms);
- static void GetPropertyText(ScriptMethodParams ¶ms);
- static void GetTextProperty(ScriptMethodParams ¶ms);
- static void HasInventory(ScriptMethodParams ¶ms);
- static void IsCollidingWithChar(ScriptMethodParams ¶ms);
- static void IsCollidingWithObject(ScriptMethodParams ¶ms);
- static void LockView(ScriptMethodParams ¶ms);
- static void LockViewEx(ScriptMethodParams ¶ms);
- static void LockViewAligned_Old(ScriptMethodParams ¶ms);
- static void LockViewAlignedEx_Old(ScriptMethodParams ¶ms);
- static void LockViewAligned(ScriptMethodParams ¶ms);
- static void LockViewAlignedEx(ScriptMethodParams ¶ms);
- static void LockViewFrame(ScriptMethodParams ¶ms);
- static void LockViewFrameEx(ScriptMethodParams ¶ms);
- static void LockViewOffset(ScriptMethodParams ¶ms);
- static void LoseInventory(ScriptMethodParams ¶ms);
- static void Move(ScriptMethodParams ¶ms);
- static void PlaceOnWalkableArea(ScriptMethodParams ¶ms);
- static void RemoveTint(ScriptMethodParams ¶ms);
- static void RunInteraction(ScriptMethodParams ¶ms);
- static void ScPl_Say(ScriptMethodParams ¶ms);
- static void SayAt(ScriptMethodParams ¶ms);
- static void SayBackground(ScriptMethodParams ¶ms);
- static void SetAsPlayer(ScriptMethodParams ¶ms);
- static void SetIdleView(ScriptMethodParams ¶ms);
- static void SetSpeed(ScriptMethodParams ¶ms);
- static void StopMoving(ScriptMethodParams ¶ms);
- static void ScPl_Think(ScriptMethodParams ¶ms);
- static void Tint(ScriptMethodParams ¶ms);
- static void UnlockView(ScriptMethodParams ¶ms);
- static void UnlockViewEx(ScriptMethodParams ¶ms);
- static void Walk(ScriptMethodParams ¶ms);
- static void WalkStraight(ScriptMethodParams ¶ms);
- static void GetCharacterAtRoom(ScriptMethodParams ¶ms);
- static void GetCharacterAtScreen(ScriptMethodParams ¶ms);
- static void GetActiveInventory(ScriptMethodParams ¶ms);
- static void SetActiveInventory(ScriptMethodParams ¶ms);
- static void GetAnimating(ScriptMethodParams ¶ms);
- static void GetAnimationSpeed(ScriptMethodParams ¶ms);
- static void SetAnimationSpeed(ScriptMethodParams ¶ms);
- static void GetBaseline(ScriptMethodParams ¶ms);
- static void SetBaseline(ScriptMethodParams ¶ms);
- static void GetBlinkInterval(ScriptMethodParams ¶ms);
- static void SetBlinkInterval(ScriptMethodParams ¶ms);
- static void GetBlinkView(ScriptMethodParams ¶ms);
- static void SetBlinkView(ScriptMethodParams ¶ms);
- static void GetBlinkWhileThinking(ScriptMethodParams ¶ms);
- static void SetBlinkWhileThinking(ScriptMethodParams ¶ms);
- static void GetBlockingHeight(ScriptMethodParams ¶ms);
- static void SetBlockingHeight(ScriptMethodParams ¶ms);
- static void GetBlockingWidth(ScriptMethodParams ¶ms);
- static void SetBlockingWidth(ScriptMethodParams ¶ms);
- static void GetClickable(ScriptMethodParams ¶ms);
- static void SetClickable(ScriptMethodParams ¶ms);
- static void GetDestinationX(ScriptMethodParams ¶ms);
- static void GetDestinationY(ScriptMethodParams ¶ms);
- static void GetDiagonalWalking(ScriptMethodParams ¶ms);
- static void SetDiagonalWalking(ScriptMethodParams ¶ms);
- static void GetFrame(ScriptMethodParams ¶ms);
- static void SetFrame(ScriptMethodParams ¶ms);
- static void GetHasExplicitTint_Old(ScriptMethodParams ¶ms);
- static void GetHasExplicitTint(ScriptMethodParams ¶ms);
- static void GetID(ScriptMethodParams ¶ms);
- static void GetIdleView(ScriptMethodParams ¶ms);
- static void GetIInventoryQuantity(ScriptMethodParams ¶ms);
- static void SetIInventoryQuantity(ScriptMethodParams ¶ms);
- static void GetIgnoreLighting(ScriptMethodParams ¶ms);
- static void SetIgnoreLighting(ScriptMethodParams ¶ms);
- static void GetIgnoreScaling(ScriptMethodParams ¶ms);
- static void SetIgnoreScaling(ScriptMethodParams ¶ms);
- static void GetIgnoreWalkbehinds(ScriptMethodParams ¶ms);
- static void SetIgnoreWalkbehinds(ScriptMethodParams ¶ms);
- static void GetLoop(ScriptMethodParams ¶ms);
- static void SetLoop(ScriptMethodParams ¶ms);
- static void SetManualScaling(ScriptMethodParams ¶ms);
- static void GetMovementLinkedToAnimation(ScriptMethodParams ¶ms);
- static void SetMovementLinkedToAnimation(ScriptMethodParams ¶ms);
- static void GetMoving(ScriptMethodParams ¶ms);
- static void GetName(ScriptMethodParams ¶ms);
- static void SetName(ScriptMethodParams ¶ms);
- static void GetNormalView(ScriptMethodParams ¶ms);
- static void GetPreviousRoom(ScriptMethodParams ¶ms);
- static void GetRoom(ScriptMethodParams ¶ms);
- static void GetScaleMoveSpeed(ScriptMethodParams ¶ms);
- static void SetScaleMoveSpeed(ScriptMethodParams ¶ms);
- static void GetScaleVolume(ScriptMethodParams ¶ms);
- static void SetScaleVolume(ScriptMethodParams ¶ms);
- static void GetScaling(ScriptMethodParams ¶ms);
- static void SetScaling(ScriptMethodParams ¶ms);
- static void GetSolid(ScriptMethodParams ¶ms);
- static void SetSolid(ScriptMethodParams ¶ms);
- static void GetSpeaking(ScriptMethodParams ¶ms);
- static void GetSpeakingFrame(ScriptMethodParams ¶ms);
- static void GetCharacterSpeechAnimationDelay(ScriptMethodParams ¶ms);
- static void SetSpeechAnimationDelay(ScriptMethodParams ¶ms);
- static void GetSpeechColor(ScriptMethodParams ¶ms);
- static void SetSpeechColor(ScriptMethodParams ¶ms);
- static void GetSpeechView(ScriptMethodParams ¶ms);
- static void SetSpeechView(ScriptMethodParams ¶ms);
- static void GetThinkView(ScriptMethodParams ¶ms);
- static void SetThinkView(ScriptMethodParams ¶ms);
- static void GetTransparency(ScriptMethodParams ¶ms);
- static void SetTransparency(ScriptMethodParams ¶ms);
- static void GetTurnBeforeWalking(ScriptMethodParams ¶ms);
- static void SetTurnBeforeWalking(ScriptMethodParams ¶ms);
- static void GetView(ScriptMethodParams ¶ms);
- static void GetWalkSpeedX(ScriptMethodParams ¶ms);
- static void GetWalkSpeedY(ScriptMethodParams ¶ms);
- static void GetX(ScriptMethodParams ¶ms);
- static void SetX(ScriptMethodParams ¶ms);
- static void GetY(ScriptMethodParams ¶ms);
- static void SetY(ScriptMethodParams ¶ms);
- static void GetZ(ScriptMethodParams ¶ms);
- static void SetZ(ScriptMethodParams ¶ms);
+ void AddInventory(ScriptMethodParams ¶ms);
+ void AddWaypoint(ScriptMethodParams ¶ms);
+ void Animate(ScriptMethodParams ¶ms);
+ void ChangeRoom(ScriptMethodParams ¶ms);
+ void ChangeRoomAutoPosition(ScriptMethodParams ¶ms);
+ void ChangeView(ScriptMethodParams ¶ms);
+ void FaceCharacter(ScriptMethodParams ¶ms);
+ void FaceDirection(ScriptMethodParams ¶ms);
+ void FaceLocation(ScriptMethodParams ¶ms);
+ void FaceObject(ScriptMethodParams ¶ms);
+ void FollowCharacter(ScriptMethodParams ¶ms);
+ void GetProperty(ScriptMethodParams ¶ms);
+ void GetPropertyText(ScriptMethodParams ¶ms);
+ void GetTextProperty(ScriptMethodParams ¶ms);
+ void HasInventory(ScriptMethodParams ¶ms);
+ void IsCollidingWithChar(ScriptMethodParams ¶ms);
+ void IsCollidingWithObject(ScriptMethodParams ¶ms);
+ void LockView(ScriptMethodParams ¶ms);
+ void LockViewEx(ScriptMethodParams ¶ms);
+ void LockViewAligned_Old(ScriptMethodParams ¶ms);
+ void LockViewAlignedEx_Old(ScriptMethodParams ¶ms);
+ void LockViewAligned(ScriptMethodParams ¶ms);
+ void LockViewAlignedEx(ScriptMethodParams ¶ms);
+ void LockViewFrame(ScriptMethodParams ¶ms);
+ void LockViewFrameEx(ScriptMethodParams ¶ms);
+ void LockViewOffset(ScriptMethodParams ¶ms);
+ void LoseInventory(ScriptMethodParams ¶ms);
+ void Move(ScriptMethodParams ¶ms);
+ void PlaceOnWalkableArea(ScriptMethodParams ¶ms);
+ void RemoveTint(ScriptMethodParams ¶ms);
+ void RunInteraction(ScriptMethodParams ¶ms);
+ void ScPl_Say(ScriptMethodParams ¶ms);
+ void SayAt(ScriptMethodParams ¶ms);
+ void SayBackground(ScriptMethodParams ¶ms);
+ void SetAsPlayer(ScriptMethodParams ¶ms);
+ void SetIdleView(ScriptMethodParams ¶ms);
+ void SetSpeed(ScriptMethodParams ¶ms);
+ void StopMoving(ScriptMethodParams ¶ms);
+ void ScPl_Think(ScriptMethodParams ¶ms);
+ void Tint(ScriptMethodParams ¶ms);
+ void UnlockView(ScriptMethodParams ¶ms);
+ void UnlockViewEx(ScriptMethodParams ¶ms);
+ void Walk(ScriptMethodParams ¶ms);
+ void WalkStraight(ScriptMethodParams ¶ms);
+ void GetCharacterAtRoom(ScriptMethodParams ¶ms);
+ void GetCharacterAtScreen(ScriptMethodParams ¶ms);
+ void GetActiveInventory(ScriptMethodParams ¶ms);
+ void SetActiveInventory(ScriptMethodParams ¶ms);
+ void GetAnimating(ScriptMethodParams ¶ms);
+ void GetAnimationSpeed(ScriptMethodParams ¶ms);
+ void SetAnimationSpeed(ScriptMethodParams ¶ms);
+ void GetBaseline(ScriptMethodParams ¶ms);
+ void SetBaseline(ScriptMethodParams ¶ms);
+ void GetBlinkInterval(ScriptMethodParams ¶ms);
+ void SetBlinkInterval(ScriptMethodParams ¶ms);
+ void GetBlinkView(ScriptMethodParams ¶ms);
+ void SetBlinkView(ScriptMethodParams ¶ms);
+ void GetBlinkWhileThinking(ScriptMethodParams ¶ms);
+ void SetBlinkWhileThinking(ScriptMethodParams ¶ms);
+ void GetBlockingHeight(ScriptMethodParams ¶ms);
+ void SetBlockingHeight(ScriptMethodParams ¶ms);
+ void GetBlockingWidth(ScriptMethodParams ¶ms);
+ void SetBlockingWidth(ScriptMethodParams ¶ms);
+ void GetClickable(ScriptMethodParams ¶ms);
+ void SetClickable(ScriptMethodParams ¶ms);
+ void GetDestinationX(ScriptMethodParams ¶ms);
+ void GetDestinationY(ScriptMethodParams ¶ms);
+ void GetDiagonalWalking(ScriptMethodParams ¶ms);
+ void SetDiagonalWalking(ScriptMethodParams ¶ms);
+ void GetFrame(ScriptMethodParams ¶ms);
+ void SetFrame(ScriptMethodParams ¶ms);
+ void GetHasExplicitTint_Old(ScriptMethodParams ¶ms);
+ void GetHasExplicitTint(ScriptMethodParams ¶ms);
+ void GetID(ScriptMethodParams ¶ms);
+ void GetIdleView(ScriptMethodParams ¶ms);
+ void GetIInventoryQuantity(ScriptMethodParams ¶ms);
+ void SetIInventoryQuantity(ScriptMethodParams ¶ms);
+ void GetIgnoreLighting(ScriptMethodParams ¶ms);
+ void SetIgnoreLighting(ScriptMethodParams ¶ms);
+ void GetIgnoreScaling(ScriptMethodParams ¶ms);
+ void SetIgnoreScaling(ScriptMethodParams ¶ms);
+ void GetIgnoreWalkbehinds(ScriptMethodParams ¶ms);
+ void SetIgnoreWalkbehinds(ScriptMethodParams ¶ms);
+ void GetLoop(ScriptMethodParams ¶ms);
+ void SetLoop(ScriptMethodParams ¶ms);
+ void SetManualScaling(ScriptMethodParams ¶ms);
+ void GetMovementLinkedToAnimation(ScriptMethodParams ¶ms);
+ void SetMovementLinkedToAnimation(ScriptMethodParams ¶ms);
+ void GetMoving(ScriptMethodParams ¶ms);
+ void GetName(ScriptMethodParams ¶ms);
+ void SetName(ScriptMethodParams ¶ms);
+ void GetNormalView(ScriptMethodParams ¶ms);
+ void GetPreviousRoom(ScriptMethodParams ¶ms);
+ void GetRoom(ScriptMethodParams ¶ms);
+ void GetScaleMoveSpeed(ScriptMethodParams ¶ms);
+ void SetScaleMoveSpeed(ScriptMethodParams ¶ms);
+ void GetScaleVolume(ScriptMethodParams ¶ms);
+ void SetScaleVolume(ScriptMethodParams ¶ms);
+ void GetScaling(ScriptMethodParams ¶ms);
+ void SetScaling(ScriptMethodParams ¶ms);
+ void GetSolid(ScriptMethodParams ¶ms);
+ void SetSolid(ScriptMethodParams ¶ms);
+ void GetSpeaking(ScriptMethodParams ¶ms);
+ void GetSpeakingFrame(ScriptMethodParams ¶ms);
+ void GetCharacterSpeechAnimationDelay(ScriptMethodParams ¶ms);
+ void SetSpeechAnimationDelay(ScriptMethodParams ¶ms);
+ void GetSpeechColor(ScriptMethodParams ¶ms);
+ void SetSpeechColor(ScriptMethodParams ¶ms);
+ void GetSpeechView(ScriptMethodParams ¶ms);
+ void SetSpeechView(ScriptMethodParams ¶ms);
+ void GetThinkView(ScriptMethodParams ¶ms);
+ void SetThinkView(ScriptMethodParams ¶ms);
+ void GetTransparency(ScriptMethodParams ¶ms);
+ void SetTransparency(ScriptMethodParams ¶ms);
+ void GetTurnBeforeWalking(ScriptMethodParams ¶ms);
+ void SetTurnBeforeWalking(ScriptMethodParams ¶ms);
+ void GetView(ScriptMethodParams ¶ms);
+ void GetWalkSpeedX(ScriptMethodParams ¶ms);
+ void GetWalkSpeedY(ScriptMethodParams ¶ms);
+ void GetX(ScriptMethodParams ¶ms);
+ void SetX(ScriptMethodParams ¶ms);
+ void GetY(ScriptMethodParams ¶ms);
+ void SetY(ScriptMethodParams ¶ms);
+ void GetZ(ScriptMethodParams ¶ms);
+ void SetZ(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/date_time.cpp b/engines/ags/plugins/core/date_time.cpp
index 0a39518ddb..fab6515974 100644
--- a/engines/ags/plugins/core/date_time.cpp
+++ b/engines/ags/plugins/core/date_time.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void DateTime::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(DateTime::get_Now, Now);
SCRIPT_METHOD_EXT(DateTime::get_DayOfMonth, GetDayOfMonth);
SCRIPT_METHOD_EXT(DateTime::get_Hour, GetHour);
@@ -36,6 +37,7 @@ void DateTime::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(DateTime::get_RawTime, GetRawTime);
SCRIPT_METHOD_EXT(DateTime::get_Second, GetSecond);
SCRIPT_METHOD_EXT(DateTime::get_Year, GetYear);
+ */
}
void DateTime::Now(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/date_time.h b/engines/ags/plugins/core/date_time.h
index 4904591edb..6fb8e8a48b 100644
--- a/engines/ags/plugins/core/date_time.h
+++ b/engines/ags/plugins/core/date_time.h
@@ -23,24 +23,26 @@
#ifndef AGS_PLUGINS_CORE_DATE_TIME_H
#define AGS_PLUGINS_CORE_DATE_TIME_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class DateTime : public ScriptContainer {
+ SCRIPT_HASH(DateTime)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~DateTime() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void Now(ScriptMethodParams ¶ms);
- static void GetDayOfMonth(ScriptMethodParams ¶ms);
- static void GetHour(ScriptMethodParams ¶ms);
- static void GetMinute(ScriptMethodParams ¶ms);
- static void GetMonth(ScriptMethodParams ¶ms);
- static void GetRawTime(ScriptMethodParams ¶ms);
- static void GetSecond(ScriptMethodParams ¶ms);
- static void GetYear(ScriptMethodParams ¶ms);
+ void Now(ScriptMethodParams ¶ms);
+ void GetDayOfMonth(ScriptMethodParams ¶ms);
+ void GetHour(ScriptMethodParams ¶ms);
+ void GetMinute(ScriptMethodParams ¶ms);
+ void GetMonth(ScriptMethodParams ¶ms);
+ void GetRawTime(ScriptMethodParams ¶ms);
+ void GetSecond(ScriptMethodParams ¶ms);
+ void GetYear(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/dialog.cpp b/engines/ags/plugins/core/dialog.cpp
index 1a9d50e52d..2066bb4214 100644
--- a/engines/ags/plugins/core/dialog.cpp
+++ b/engines/ags/plugins/core/dialog.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void Dialog::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(Dialog::get_ID, GetID);
SCRIPT_METHOD_EXT(Dialog::get_OptionCount, GetOptionCount);
SCRIPT_METHOD_EXT(Dialog::get_ShowTextParser, GetShowTextParser);
@@ -37,6 +38,7 @@ void Dialog::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Dialog::HasOptionBeenChosen^1, HasOptionBeenChosen);
SCRIPT_METHOD_EXT(Dialog::SetOptionState^2, SetOptionState);
SCRIPT_METHOD_EXT(Dialog::Start^0, Start);
+ */
}
void Dialog::GetID(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/dialog.h b/engines/ags/plugins/core/dialog.h
index f8dab558f7..3981a208e3 100644
--- a/engines/ags/plugins/core/dialog.h
+++ b/engines/ags/plugins/core/dialog.h
@@ -23,25 +23,27 @@
#ifndef AGS_PLUGINS_CORE_DIALOG_H
#define AGS_PLUGINS_CORE_DIALOG_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Dialog : public ScriptContainer {
+ SCRIPT_HASH(Dialog)
public:
- static void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~Dialog() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void GetID(ScriptMethodParams ¶ms);
- static void GetOptionCount(ScriptMethodParams ¶ms);
- static void GetShowTextParser(ScriptMethodParams ¶ms);
- static void DisplayOptions(ScriptMethodParams ¶ms);
- static void GetOptionState(ScriptMethodParams ¶ms);
- static void GetOptionText(ScriptMethodParams ¶ms);
- static void HasOptionBeenChosen(ScriptMethodParams ¶ms);
- static void SetOptionState(ScriptMethodParams ¶ms);
- static void Start(ScriptMethodParams ¶ms);
+ void GetID(ScriptMethodParams ¶ms);
+ void GetOptionCount(ScriptMethodParams ¶ms);
+ void GetShowTextParser(ScriptMethodParams ¶ms);
+ void DisplayOptions(ScriptMethodParams ¶ms);
+ void GetOptionState(ScriptMethodParams ¶ms);
+ void GetOptionText(ScriptMethodParams ¶ms);
+ void HasOptionBeenChosen(ScriptMethodParams ¶ms);
+ void SetOptionState(ScriptMethodParams ¶ms);
+ void Start(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/dialog_options_rendering_info.cpp b/engines/ags/plugins/core/dialog_options_rendering_info.cpp
index ffaa544461..32f8ab0bf6 100644
--- a/engines/ags/plugins/core/dialog_options_rendering_info.cpp
+++ b/engines/ags/plugins/core/dialog_options_rendering_info.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void DialogOptionsRenderingInfo::AGS_EngineStartup(IAGSEngine *engine) {
+/*
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_ActiveOptionID, GetActiveOptionID);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_ActiveOptionID, SetActiveOptionID);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_DialogToRender, GetDialogToRender);
@@ -46,6 +47,7 @@ void DialogOptionsRenderingInfo::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_X, SetX);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_Y, GetY);
SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_Y, SetY);
+ */
}
void DialogOptionsRenderingInfo::GetActiveOptionID(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/dialog_options_rendering_info.h b/engines/ags/plugins/core/dialog_options_rendering_info.h
index 2a9cf63a8e..1386c47951 100644
--- a/engines/ags/plugins/core/dialog_options_rendering_info.h
+++ b/engines/ags/plugins/core/dialog_options_rendering_info.h
@@ -23,34 +23,36 @@
#ifndef AGS_PLUGINS_CORE_DIALOG_OPTIONS_RENDERING_INFO_H
#define AGS_PLUGINS_CORE_DIALOG_OPTIONS_RENDERING_INFO_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class DialogOptionsRenderingInfo : public ScriptContainer {
+ SCRIPT_HASH(DialogOptionsRenderingInfo)
public:
- static void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~DialogOptionsRenderingInfo() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void GetActiveOptionID(ScriptMethodParams ¶ms);
- static void SetActiveOptionID(ScriptMethodParams ¶ms);
- static void GetDialogToRender(ScriptMethodParams ¶ms);
- static void GetHeight(ScriptMethodParams ¶ms);
- static void SetHeight(ScriptMethodParams ¶ms);
- static void GetParserTextboxX(ScriptMethodParams ¶ms);
- static void SetParserTextboxX(ScriptMethodParams ¶ms);
- static void GetParserTextboxY(ScriptMethodParams ¶ms);
- static void SetParserTextboxY(ScriptMethodParams ¶ms);
- static void GetParserTextboxWidth(ScriptMethodParams ¶ms);
- static void SetParserTextboxWidth(ScriptMethodParams ¶ms);
- static void GetSurface(ScriptMethodParams ¶ms);
- static void GetWidth(ScriptMethodParams ¶ms);
- static void SetWidth(ScriptMethodParams ¶ms);
- static void GetX(ScriptMethodParams ¶ms);
- static void SetX(ScriptMethodParams ¶ms);
- static void GetY(ScriptMethodParams ¶ms);
- static void SetY(ScriptMethodParams ¶ms);
+ void GetActiveOptionID(ScriptMethodParams ¶ms);
+ void SetActiveOptionID(ScriptMethodParams ¶ms);
+ void GetDialogToRender(ScriptMethodParams ¶ms);
+ void GetHeight(ScriptMethodParams ¶ms);
+ void SetHeight(ScriptMethodParams ¶ms);
+ void GetParserTextboxX(ScriptMethodParams ¶ms);
+ void SetParserTextboxX(ScriptMethodParams ¶ms);
+ void GetParserTextboxY(ScriptMethodParams ¶ms);
+ void SetParserTextboxY(ScriptMethodParams ¶ms);
+ void GetParserTextboxWidth(ScriptMethodParams ¶ms);
+ void SetParserTextboxWidth(ScriptMethodParams ¶ms);
+ void GetSurface(ScriptMethodParams ¶ms);
+ void GetWidth(ScriptMethodParams ¶ms);
+ void SetWidth(ScriptMethodParams ¶ms);
+ void GetX(ScriptMethodParams ¶ms);
+ void SetX(ScriptMethodParams ¶ms);
+ void GetY(ScriptMethodParams ¶ms);
+ void SetY(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/drawing_surface.cpp b/engines/ags/plugins/core/drawing_surface.cpp
index 5c59100477..9eab63709c 100644
--- a/engines/ags/plugins/core/drawing_surface.cpp
+++ b/engines/ags/plugins/core/drawing_surface.cpp
@@ -29,6 +29,7 @@ namespace Plugins {
namespace Core {
void DrawingSurface::AGS_EngineStartup(IAGSEngine *engine) {
+/*
SCRIPT_METHOD_EXT(DrawingSurface::Clear^1, Clear);
SCRIPT_METHOD_EXT(DrawingSurface::CreateCopy^0, CreateCopy);
SCRIPT_METHOD_EXT(DrawingSurface::DrawCircle^3, DrawCircle);
@@ -54,6 +55,7 @@ void DrawingSurface::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(DrawingSurface::get_UseHighResCoordinates, GetUseHighResCoordinates);
SCRIPT_METHOD_EXT(DrawingSurface::set_UseHighResCoordinates, SetUseHighResCoordinates);
SCRIPT_METHOD_EXT(DrawingSurface::get_Width, GetWidth);
+*/
}
void DrawingSurface::Clear(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/drawing_surface.h b/engines/ags/plugins/core/drawing_surface.h
index 1f0e0ab03c..c516798eaf 100644
--- a/engines/ags/plugins/core/drawing_surface.h
+++ b/engines/ags/plugins/core/drawing_surface.h
@@ -23,37 +23,39 @@
#ifndef AGS_PLUGINS_CORE_DRAWING_SURFACE_H
#define AGS_PLUGINS_CORE_DRAWING_SURFACE_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class DrawingSurface : public ScriptContainer {
+ SCRIPT_HASH(DrawingSurface)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~DrawingSurface() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void Clear(ScriptMethodParams ¶ms);
- static void CreateCopy(ScriptMethodParams ¶ms);
- static void DrawCircle(ScriptMethodParams ¶ms);
- static void DrawImage(ScriptMethodParams ¶ms);
- static void DrawLine(ScriptMethodParams ¶ms);
- static void DrawMessageWrapped(ScriptMethodParams ¶ms);
- static void DrawPixel(ScriptMethodParams ¶ms);
- static void DrawRectangle(ScriptMethodParams ¶ms);
- static void ScPl_DrawString(ScriptMethodParams ¶ms);
- static void DrawStringWrapped_Old(ScriptMethodParams ¶ms);
- static void DrawStringWrapped(ScriptMethodParams ¶ms);
- static void DrawSurface(ScriptMethodParams ¶ms);
- static void DrawTriangle(ScriptMethodParams ¶ms);
- static void GetPixel(ScriptMethodParams ¶ms);
- static void Release(ScriptMethodParams ¶ms);
- static void GetDrawingColor(ScriptMethodParams ¶ms);
- static void SetDrawingColor(ScriptMethodParams ¶ms);
- static void GetHeight(ScriptMethodParams ¶ms);
- static void GetUseHighResCoordinates(ScriptMethodParams ¶ms);
- static void SetUseHighResCoordinates(ScriptMethodParams ¶ms);
- static void GetWidth(ScriptMethodParams ¶ms);
+ void Clear(ScriptMethodParams ¶ms);
+ void CreateCopy(ScriptMethodParams ¶ms);
+ void DrawCircle(ScriptMethodParams ¶ms);
+ void DrawImage(ScriptMethodParams ¶ms);
+ void DrawLine(ScriptMethodParams ¶ms);
+ void DrawMessageWrapped(ScriptMethodParams ¶ms);
+ void DrawPixel(ScriptMethodParams ¶ms);
+ void DrawRectangle(ScriptMethodParams ¶ms);
+ void ScPl_DrawString(ScriptMethodParams ¶ms);
+ void DrawStringWrapped_Old(ScriptMethodParams ¶ms);
+ void DrawStringWrapped(ScriptMethodParams ¶ms);
+ void DrawSurface(ScriptMethodParams ¶ms);
+ void DrawTriangle(ScriptMethodParams ¶ms);
+ void GetPixel(ScriptMethodParams ¶ms);
+ void Release(ScriptMethodParams ¶ms);
+ void GetDrawingColor(ScriptMethodParams ¶ms);
+ void SetDrawingColor(ScriptMethodParams ¶ms);
+ void GetHeight(ScriptMethodParams ¶ms);
+ void GetUseHighResCoordinates(ScriptMethodParams ¶ms);
+ void SetUseHighResCoordinates(ScriptMethodParams ¶ms);
+ void GetWidth(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/dynamic_sprite.cpp b/engines/ags/plugins/core/dynamic_sprite.cpp
index 80abe02f5f..f6a3d4240f 100644
--- a/engines/ags/plugins/core/dynamic_sprite.cpp
+++ b/engines/ags/plugins/core/dynamic_sprite.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void DynamicSprite::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(DynamicSprite::ChangeCanvasSize^4, ChangeCanvasSize);
SCRIPT_METHOD_EXT(DynamicSprite::CopyTransparencyMask^1, CopyTransparencyMask);
SCRIPT_METHOD_EXT(DynamicSprite::Crop^4, Crop);
@@ -50,6 +51,7 @@ void DynamicSprite::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(DynamicSprite::CreateFromFile, CreateFromFile);
SCRIPT_METHOD_EXT(DynamicSprite::CreateFromSaveGame, CreateFromSaveGame);
SCRIPT_METHOD_EXT(DynamicSprite::CreateFromScreenShot, CreateFromScreenShot);
+ */
}
void DynamicSprite::ChangeCanvasSize(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/dynamic_sprite.h b/engines/ags/plugins/core/dynamic_sprite.h
index 4692e4d775..297528320f 100644
--- a/engines/ags/plugins/core/dynamic_sprite.h
+++ b/engines/ags/plugins/core/dynamic_sprite.h
@@ -23,38 +23,40 @@
#ifndef AGS_PLUGINS_CORE_DYNAMIC_SPRITE_H
#define AGS_PLUGINS_CORE_DYNAMIC_SPRITE_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class DynamicSprite : public ScriptContainer {
+ SCRIPT_HASH(DynamicSprite)
public:
- static void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~DynamicSprite() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void ChangeCanvasSize(ScriptMethodParams ¶ms);
- static void CopyTransparencyMask(ScriptMethodParams ¶ms);
- static void Crop(ScriptMethodParams ¶ms);
- static void Delete(ScriptMethodParams ¶ms);
- static void Flip(ScriptMethodParams ¶ms);
- static void GetDrawingSurface(ScriptMethodParams ¶ms);
- static void Resize(ScriptMethodParams ¶ms);
- static void Rotate(ScriptMethodParams ¶ms);
- static void SaveToFile(ScriptMethodParams ¶ms);
- static void Tint(ScriptMethodParams ¶ms);
- static void GetColorDepth(ScriptMethodParams ¶ms);
- static void GetGraphic(ScriptMethodParams ¶ms);
- static void GetHeight(ScriptMethodParams ¶ms);
- static void GetWidth(ScriptMethodParams ¶ms);
- static void Create(ScriptMethodParams ¶ms);
- static void CreateFromBackground(ScriptMethodParams ¶ms);
- static void CreateFromDrawingSurface(ScriptMethodParams ¶ms);
- static void CreateFromExistingSprite_Old(ScriptMethodParams ¶ms);
- static void CreateFromExistingSprite(ScriptMethodParams ¶ms);
- static void CreateFromFile(ScriptMethodParams ¶ms);
- static void CreateFromSaveGame(ScriptMethodParams ¶ms);
- static void CreateFromScreenShot(ScriptMethodParams ¶ms);
+ void ChangeCanvasSize(ScriptMethodParams ¶ms);
+ void CopyTransparencyMask(ScriptMethodParams ¶ms);
+ void Crop(ScriptMethodParams ¶ms);
+ void Delete(ScriptMethodParams ¶ms);
+ void Flip(ScriptMethodParams ¶ms);
+ void GetDrawingSurface(ScriptMethodParams ¶ms);
+ void Resize(ScriptMethodParams ¶ms);
+ void Rotate(ScriptMethodParams ¶ms);
+ void SaveToFile(ScriptMethodParams ¶ms);
+ void Tint(ScriptMethodParams ¶ms);
+ void GetColorDepth(ScriptMethodParams ¶ms);
+ void GetGraphic(ScriptMethodParams ¶ms);
+ void GetHeight(ScriptMethodParams ¶ms);
+ void GetWidth(ScriptMethodParams ¶ms);
+ void Create(ScriptMethodParams ¶ms);
+ void CreateFromBackground(ScriptMethodParams ¶ms);
+ void CreateFromDrawingSurface(ScriptMethodParams ¶ms);
+ void CreateFromExistingSprite_Old(ScriptMethodParams ¶ms);
+ void CreateFromExistingSprite(ScriptMethodParams ¶ms);
+ void CreateFromFile(ScriptMethodParams ¶ms);
+ void CreateFromSaveGame(ScriptMethodParams ¶ms);
+ void CreateFromScreenShot(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/file.cpp b/engines/ags/plugins/core/file.cpp
index f8c82f96f0..799434c685 100644
--- a/engines/ags/plugins/core/file.cpp
+++ b/engines/ags/plugins/core/file.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void File::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(File::Delete^1, Delete);
SCRIPT_METHOD_EXT(File::Exists^1, Exists);
SCRIPT_METHOD_EXT(File::Open^2, OpenFile);
@@ -45,6 +46,7 @@ void File::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(File::WriteString^1, WriteString);
SCRIPT_METHOD_EXT(File::get_EOF, GetEOF);
SCRIPT_METHOD_EXT(File::get_Error, GetError);
+ */
}
void File::Delete(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/file.h b/engines/ags/plugins/core/file.h
index 4c6cfe56b5..5b8ac25861 100644
--- a/engines/ags/plugins/core/file.h
+++ b/engines/ags/plugins/core/file.h
@@ -23,33 +23,35 @@
#ifndef AGS_PLUGINS_CORE_FILE_H
#define AGS_PLUGINS_CORE_FILE_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class File : public ScriptContainer {
+ SCRIPT_HASH(File)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~File() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void Delete(ScriptMethodParams ¶ms);
- static void Exists(ScriptMethodParams ¶ms);
- static void OpenFile(ScriptMethodParams ¶ms);
- static void Close(ScriptMethodParams ¶ms);
- static void ReadInt(ScriptMethodParams ¶ms);
- static void ReadRawChar(ScriptMethodParams ¶ms);
- static void ReadRawInt(ScriptMethodParams ¶ms);
- static void ReadRawLine(ScriptMethodParams ¶ms);
- static void ReadRawLineBack(ScriptMethodParams ¶ms);
- static void ReadString(ScriptMethodParams ¶ms);
- static void ReadStringBack(ScriptMethodParams ¶ms);
- static void WriteInt(ScriptMethodParams ¶ms);
- static void WriteRawChar(ScriptMethodParams ¶ms);
- static void WriteRawLine(ScriptMethodParams ¶ms);
- static void WriteString(ScriptMethodParams ¶ms);
- static void GetEOF(ScriptMethodParams ¶ms);
- static void GetError(ScriptMethodParams ¶ms);
+ void Delete(ScriptMethodParams ¶ms);
+ void Exists(ScriptMethodParams ¶ms);
+ void OpenFile(ScriptMethodParams ¶ms);
+ void Close(ScriptMethodParams ¶ms);
+ void ReadInt(ScriptMethodParams ¶ms);
+ void ReadRawChar(ScriptMethodParams ¶ms);
+ void ReadRawInt(ScriptMethodParams ¶ms);
+ void ReadRawLine(ScriptMethodParams ¶ms);
+ void ReadRawLineBack(ScriptMethodParams ¶ms);
+ void ReadString(ScriptMethodParams ¶ms);
+ void ReadStringBack(ScriptMethodParams ¶ms);
+ void WriteInt(ScriptMethodParams ¶ms);
+ void WriteRawChar(ScriptMethodParams ¶ms);
+ void WriteRawLine(ScriptMethodParams ¶ms);
+ void WriteString(ScriptMethodParams ¶ms);
+ void GetEOF(ScriptMethodParams ¶ms);
+ void GetError(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/game.cpp b/engines/ags/plugins/core/game.cpp
index 616171cd06..537c1c9f72 100644
--- a/engines/ags/plugins/core/game.cpp
+++ b/engines/ags/plugins/core/game.cpp
@@ -30,6 +30,7 @@ namespace Plugins {
namespace Core {
void Game::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(Game::IsAudioPlaying^1, IsAudioPlaying);
SCRIPT_METHOD_EXT(Game::SetAudioTypeSpeechVolumeDrop^2, SetAudioTypeSpeechVolumeDrop);
SCRIPT_METHOD_EXT(Game::SetAudioTypeVolume^3, SetAudioTypeVolume);
@@ -77,6 +78,7 @@ void Game::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Game::get_UseNativeCoordinates, GetUseNativeCoordinates);
SCRIPT_METHOD_EXT(Game::get_ViewCount, GetViewCount);
SCRIPT_METHOD_EXT(Game::PlayVoiceClip, PlayVoiceClip);
+ */
}
void Game::IsAudioPlaying(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/game.h b/engines/ags/plugins/core/game.h
index 837c54aa46..990ce7195f 100644
--- a/engines/ags/plugins/core/game.h
+++ b/engines/ags/plugins/core/game.h
@@ -23,63 +23,65 @@
#ifndef AGS_PLUGINS_CORE_GAME_H
#define AGS_PLUGINS_CORE_GAME_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Game : public ScriptContainer {
+ SCRIPT_HASH(Game)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~Game() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void IsAudioPlaying(ScriptMethodParams ¶ms);
- static void SetAudioTypeSpeechVolumeDrop(ScriptMethodParams ¶ms);
- static void SetAudioTypeVolume(ScriptMethodParams ¶ms);
- static void StopAudio(ScriptMethodParams ¶ms);
- static void ChangeTranslation(ScriptMethodParams ¶ms);
- static void DoOnceOnly(ScriptMethodParams ¶ms);
- static void GetColorFromRGB(ScriptMethodParams ¶ms);
- static void GetFrameCountForLoop(ScriptMethodParams ¶ms);
- static void GetLocationName(ScriptMethodParams ¶ms);
- static void GetLoopCountForView(ScriptMethodParams ¶ms);
- static void GetMODPattern(ScriptMethodParams ¶ms);
- static void GetRunNextSettingForLoop(ScriptMethodParams ¶ms);
- static void GetSaveSlotDescription(ScriptMethodParams ¶ms);
- static void GetViewFrame(ScriptMethodParams ¶ms);
- static void InputBox(ScriptMethodParams ¶ms);
- static void SetSaveGameDirectory(ScriptMethodParams ¶ms);
- static void StopAllSounds(ScriptMethodParams ¶ms);
- static void GetCharacterCount(ScriptMethodParams ¶ms);
- static void GetDialogCount(ScriptMethodParams ¶ms);
- static void GetFileName(ScriptMethodParams ¶ms);
- static void GetFontCount(ScriptMethodParams ¶ms);
- static void GetGlobalMessages(ScriptMethodParams ¶ms);
- static void GetGlobalStrings(ScriptMethodParams ¶ms);
- static void SetGlobalString(ScriptMethodParams ¶ms);
- static void GetGUICount(ScriptMethodParams ¶ms);
- static void GetIgnoreUserInputAfterTextTimeoutMs(ScriptMethodParams ¶ms);
- static void SetIgnoreUserInputAfterTextTimeoutMs(ScriptMethodParams ¶ms);
- static void GetInSkippableCutscene(ScriptMethodParams ¶ms);
- static void GetInventoryItemCount(ScriptMethodParams ¶ms);
- static void GetMinimumTextDisplayTimeMs(ScriptMethodParams ¶ms);
- static void SetMinimumTextDisplayTimeMs(ScriptMethodParams ¶ms);
- static void GetMouseCursorCount(ScriptMethodParams ¶ms);
- static void GetName(ScriptMethodParams ¶ms);
- static void SetName(ScriptMethodParams ¶ms);
- static void GetNormalFont(ScriptMethodParams ¶ms);
- static void SetNormalFont(ScriptMethodParams ¶ms);
- static void GetSkippingCutscene(ScriptMethodParams ¶ms);
- static void GetSpeechFont(ScriptMethodParams ¶ms);
- static void SetSpeechFont(ScriptMethodParams ¶ms);
- static void GetSpriteWidth(ScriptMethodParams ¶ms);
- static void GetSpriteHeight(ScriptMethodParams ¶ms);
- static void GetTextReadingSpeed(ScriptMethodParams ¶ms);
- static void SetTextReadingSpeed(ScriptMethodParams ¶ms);
- static void GetTranslationFilename(ScriptMethodParams ¶ms);
- static void GetUseNativeCoordinates(ScriptMethodParams ¶ms);
- static void GetViewCount(ScriptMethodParams ¶ms);
- static void PlayVoiceClip(ScriptMethodParams ¶ms);
+ void IsAudioPlaying(ScriptMethodParams ¶ms);
+ void SetAudioTypeSpeechVolumeDrop(ScriptMethodParams ¶ms);
+ void SetAudioTypeVolume(ScriptMethodParams ¶ms);
+ void StopAudio(ScriptMethodParams ¶ms);
+ void ChangeTranslation(ScriptMethodParams ¶ms);
+ void DoOnceOnly(ScriptMethodParams ¶ms);
+ void GetColorFromRGB(ScriptMethodParams ¶ms);
+ void GetFrameCountForLoop(ScriptMethodParams ¶ms);
+ void GetLocationName(ScriptMethodParams ¶ms);
+ void GetLoopCountForView(ScriptMethodParams ¶ms);
+ void GetMODPattern(ScriptMethodParams ¶ms);
+ void GetRunNextSettingForLoop(ScriptMethodParams ¶ms);
+ void GetSaveSlotDescription(ScriptMethodParams ¶ms);
+ void GetViewFrame(ScriptMethodParams ¶ms);
+ void InputBox(ScriptMethodParams ¶ms);
+ void SetSaveGameDirectory(ScriptMethodParams ¶ms);
+ void StopAllSounds(ScriptMethodParams ¶ms);
+ void GetCharacterCount(ScriptMethodParams ¶ms);
+ void GetDialogCount(ScriptMethodParams ¶ms);
+ void GetFileName(ScriptMethodParams ¶ms);
+ void GetFontCount(ScriptMethodParams ¶ms);
+ void GetGlobalMessages(ScriptMethodParams ¶ms);
+ void GetGlobalStrings(ScriptMethodParams ¶ms);
+ void SetGlobalString(ScriptMethodParams ¶ms);
+ void GetGUICount(ScriptMethodParams ¶ms);
+ void GetIgnoreUserInputAfterTextTimeoutMs(ScriptMethodParams ¶ms);
+ void SetIgnoreUserInputAfterTextTimeoutMs(ScriptMethodParams ¶ms);
+ void GetInSkippableCutscene(ScriptMethodParams ¶ms);
+ void GetInventoryItemCount(ScriptMethodParams ¶ms);
+ void GetMinimumTextDisplayTimeMs(ScriptMethodParams ¶ms);
+ void SetMinimumTextDisplayTimeMs(ScriptMethodParams ¶ms);
+ void GetMouseCursorCount(ScriptMethodParams ¶ms);
+ void GetName(ScriptMethodParams ¶ms);
+ void SetName(ScriptMethodParams ¶ms);
+ void GetNormalFont(ScriptMethodParams ¶ms);
+ void SetNormalFont(ScriptMethodParams ¶ms);
+ void GetSkippingCutscene(ScriptMethodParams ¶ms);
+ void GetSpeechFont(ScriptMethodParams ¶ms);
+ void SetSpeechFont(ScriptMethodParams ¶ms);
+ void GetSpriteWidth(ScriptMethodParams ¶ms);
+ void GetSpriteHeight(ScriptMethodParams ¶ms);
+ void GetTextReadingSpeed(ScriptMethodParams ¶ms);
+ void SetTextReadingSpeed(ScriptMethodParams ¶ms);
+ void GetTranslationFilename(ScriptMethodParams ¶ms);
+ void GetUseNativeCoordinates(ScriptMethodParams ¶ms);
+ void GetViewCount(ScriptMethodParams ¶ms);
+ void PlayVoiceClip(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/global_api.cpp b/engines/ags/plugins/core/global_api.cpp
index bf5a97dcd1..be7dd11d43 100644
--- a/engines/ags/plugins/core/global_api.cpp
+++ b/engines/ags/plugins/core/global_api.cpp
@@ -76,6 +76,7 @@ namespace Plugins {
namespace Core {
void GlobalAPI::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(AbortGame, ScPl_sc_AbortGame);
SCRIPT_METHOD_EXT(AddInventory, add_inventory);
SCRIPT_METHOD_EXT(AddInventoryToCharacter, AddInventoryToCharacter);
@@ -441,7 +442,7 @@ void GlobalAPI::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Wait, scrWait);
SCRIPT_METHOD_EXT(WaitKey, WaitKey);
SCRIPT_METHOD_EXT(WaitMouseKey, WaitMouseKey);
-
+ */
}
void GlobalAPI::ScPl_sc_AbortGame(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/global_api.h b/engines/ags/plugins/core/global_api.h
index 10369b58fb..0f548a2718 100644
--- a/engines/ags/plugins/core/global_api.h
+++ b/engines/ags/plugins/core/global_api.h
@@ -23,377 +23,378 @@
#ifndef AGS_PLUGINS_CORE_GLOBAL_API_H
#define AGS_PLUGINS_CORE_GLOBAL_API_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class GlobalAPI : public ScriptContainer {
+ SCRIPT_HASH(GlobalAPI)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void ScPl_sc_AbortGame(ScriptMethodParams ¶ms);
- static void add_inventory(ScriptMethodParams ¶ms);
- static void AddInventoryToCharacter(ScriptMethodParams ¶ms);
- static void AnimateButton(ScriptMethodParams ¶ms);
- static void scAnimateCharacter(ScriptMethodParams ¶ms);
- static void AnimateCharacterEx(ScriptMethodParams ¶ms);
- static void AnimateObject(ScriptMethodParams ¶ms);
- static void AnimateObjectEx(ScriptMethodParams ¶ms);
- static void AreCharactersColliding(ScriptMethodParams ¶ms);
- static void AreCharObjColliding(ScriptMethodParams ¶ms);
- static void AreObjectsColliding(ScriptMethodParams ¶ms);
- static void AreThingsOverlapping(ScriptMethodParams ¶ms);
- static void CallRoomScript(ScriptMethodParams ¶ms);
- static void cd_manager(ScriptMethodParams ¶ms);
- static void CentreGUI(ScriptMethodParams ¶ms);
- static void ChangeCharacterView(ScriptMethodParams ¶ms);
- static void ChangeCursorGraphic(ScriptMethodParams ¶ms);
- static void ChangeCursorHotspot(ScriptMethodParams ¶ms);
- static void ClaimEvent(ScriptMethodParams ¶ms);
- static void CreateGraphicOverlay(ScriptMethodParams ¶ms);
- static void ScPl_CreateTextOverlay(ScriptMethodParams ¶ms);
- static void CyclePalette(ScriptMethodParams ¶ms);
- static void script_debug(ScriptMethodParams ¶ms);
- static void DeleteSaveSlot(ScriptMethodParams ¶ms);
- static void free_dynamic_sprite(ScriptMethodParams ¶ms);
- static void disable_cursor_mode(ScriptMethodParams ¶ms);
- static void DisableGroundLevelAreas(ScriptMethodParams ¶ms);
- static void DisableHotspot(ScriptMethodParams ¶ms);
- static void DisableInterface(ScriptMethodParams ¶ms);
- static void DisableRegion(ScriptMethodParams ¶ms);
- static void ScPl_Display(ScriptMethodParams ¶ms);
- static void ScPl_DisplayAt(ScriptMethodParams ¶ms);
- static void DisplayAtY(ScriptMethodParams ¶ms);
- static void DisplayMessage(ScriptMethodParams ¶ms);
- static void DisplayMessageAtY(ScriptMethodParams ¶ms);
- static void DisplayMessageBar(ScriptMethodParams ¶ms);
- static void ScPl_sc_displayspeech(ScriptMethodParams ¶ms);
- static void DisplaySpeechAt(ScriptMethodParams ¶ms);
- static void DisplaySpeechBackground(ScriptMethodParams ¶ms);
- static void ScPl_DisplayThought(ScriptMethodParams ¶ms);
- static void ScPl_DisplayTopBar(ScriptMethodParams ¶ms);
- static void enable_cursor_mode(ScriptMethodParams ¶ms);
- static void EnableGroundLevelAreas(ScriptMethodParams ¶ms);
- static void EnableHotspot(ScriptMethodParams ¶ms);
- static void EnableInterface(ScriptMethodParams ¶ms);
- static void EnableRegion(ScriptMethodParams ¶ms);
- static void EndCutscene(ScriptMethodParams ¶ms);
- static void FaceCharacter(ScriptMethodParams ¶ms);
- static void FaceLocation(ScriptMethodParams ¶ms);
- static void FadeIn(ScriptMethodParams ¶ms);
- static void my_fade_out(ScriptMethodParams ¶ms);
- static void FileClose(ScriptMethodParams ¶ms);
- static void FileIsEOF(ScriptMethodParams ¶ms);
- static void FileIsError(ScriptMethodParams ¶ms);
+ void ScPl_sc_AbortGame(ScriptMethodParams ¶ms);
+ void add_inventory(ScriptMethodParams ¶ms);
+ void AddInventoryToCharacter(ScriptMethodParams ¶ms);
+ void AnimateButton(ScriptMethodParams ¶ms);
+ void scAnimateCharacter(ScriptMethodParams ¶ms);
+ void AnimateCharacterEx(ScriptMethodParams ¶ms);
+ void AnimateObject(ScriptMethodParams ¶ms);
+ void AnimateObjectEx(ScriptMethodParams ¶ms);
+ void AreCharactersColliding(ScriptMethodParams ¶ms);
+ void AreCharObjColliding(ScriptMethodParams ¶ms);
+ void AreObjectsColliding(ScriptMethodParams ¶ms);
+ void AreThingsOverlapping(ScriptMethodParams ¶ms);
+ void CallRoomScript(ScriptMethodParams ¶ms);
+ void cd_manager(ScriptMethodParams ¶ms);
+ void CentreGUI(ScriptMethodParams ¶ms);
+ void ChangeCharacterView(ScriptMethodParams ¶ms);
+ void ChangeCursorGraphic(ScriptMethodParams ¶ms);
+ void ChangeCursorHotspot(ScriptMethodParams ¶ms);
+ void ClaimEvent(ScriptMethodParams ¶ms);
+ void CreateGraphicOverlay(ScriptMethodParams ¶ms);
+ void ScPl_CreateTextOverlay(ScriptMethodParams ¶ms);
+ void CyclePalette(ScriptMethodParams ¶ms);
+ void script_debug(ScriptMethodParams ¶ms);
+ void DeleteSaveSlot(ScriptMethodParams ¶ms);
+ void free_dynamic_sprite(ScriptMethodParams ¶ms);
+ void disable_cursor_mode(ScriptMethodParams ¶ms);
+ void DisableGroundLevelAreas(ScriptMethodParams ¶ms);
+ void DisableHotspot(ScriptMethodParams ¶ms);
+ void DisableInterface(ScriptMethodParams ¶ms);
+ void DisableRegion(ScriptMethodParams ¶ms);
+ void ScPl_Display(ScriptMethodParams ¶ms);
+ void ScPl_DisplayAt(ScriptMethodParams ¶ms);
+ void DisplayAtY(ScriptMethodParams ¶ms);
+ void DisplayMessage(ScriptMethodParams ¶ms);
+ void DisplayMessageAtY(ScriptMethodParams ¶ms);
+ void DisplayMessageBar(ScriptMethodParams ¶ms);
+ void ScPl_sc_displayspeech(ScriptMethodParams ¶ms);
+ void DisplaySpeechAt(ScriptMethodParams ¶ms);
+ void DisplaySpeechBackground(ScriptMethodParams ¶ms);
+ void ScPl_DisplayThought(ScriptMethodParams ¶ms);
+ void ScPl_DisplayTopBar(ScriptMethodParams ¶ms);
+ void enable_cursor_mode(ScriptMethodParams ¶ms);
+ void EnableGroundLevelAreas(ScriptMethodParams ¶ms);
+ void EnableHotspot(ScriptMethodParams ¶ms);
+ void EnableInterface(ScriptMethodParams ¶ms);
+ void EnableRegion(ScriptMethodParams ¶ms);
+ void EndCutscene(ScriptMethodParams ¶ms);
+ void FaceCharacter(ScriptMethodParams ¶ms);
+ void FaceLocation(ScriptMethodParams ¶ms);
+ void FadeIn(ScriptMethodParams ¶ms);
+ void my_fade_out(ScriptMethodParams ¶ms);
+ void FileClose(ScriptMethodParams ¶ms);
+ void FileIsEOF(ScriptMethodParams ¶ms);
+ void FileIsError(ScriptMethodParams ¶ms);
// NOTE: FileOpenCMode is a backwards-compatible replacement for old-style global script function FileOpen
- static void FileOpenCMode(ScriptMethodParams ¶ms);
- static void FileRead(ScriptMethodParams ¶ms);
- static void FileReadInt(ScriptMethodParams ¶ms);
- static void FileReadRawChar(ScriptMethodParams ¶ms);
- static void FileReadRawInt(ScriptMethodParams ¶ms);
- static void FileWrite(ScriptMethodParams ¶ms);
- static void FileWriteInt(ScriptMethodParams ¶ms);
- static void FileWriteRawChar(ScriptMethodParams ¶ms);
- static void FileWriteRawLine(ScriptMethodParams ¶ms);
- static void FindGUIID(ScriptMethodParams ¶ms);
- static void FlipScreen(ScriptMethodParams ¶ms);
- static void FloatToInt(ScriptMethodParams ¶ms);
- static void FollowCharacter(ScriptMethodParams ¶ms);
- static void FollowCharacterEx(ScriptMethodParams ¶ms);
- static void GetBackgroundFrame(ScriptMethodParams ¶ms);
- static void GetButtonPic(ScriptMethodParams ¶ms);
- static void GetCharIDAtScreen(ScriptMethodParams ¶ms);
- static void GetCharacterProperty(ScriptMethodParams ¶ms);
- static void GetCharacterPropertyText(ScriptMethodParams ¶ms);
- static void GetCurrentMusic(ScriptMethodParams ¶ms);
- static void GetCursorMode(ScriptMethodParams ¶ms);
- static void GetDialogOption(ScriptMethodParams ¶ms);
- static void GetGameOption(ScriptMethodParams ¶ms);
- static void GetGameParameter(ScriptMethodParams ¶ms);
- static void GetGameSpeed(ScriptMethodParams ¶ms);
- static void GetGlobalInt(ScriptMethodParams ¶ms);
- static void GetGlobalString(ScriptMethodParams ¶ms);
- static void GetGraphicalVariable(ScriptMethodParams ¶ms);
- static void GetGUIAt(ScriptMethodParams ¶ms);
- static void GetGUIObjectAt(ScriptMethodParams ¶ms);
- static void GetHotspotIDAtScreen(ScriptMethodParams ¶ms);
- static void GetHotspotName(ScriptMethodParams ¶ms);
- static void GetHotspotPointX(ScriptMethodParams ¶ms);
- static void GetHotspotPointY(ScriptMethodParams ¶ms);
- static void GetHotspotProperty(ScriptMethodParams ¶ms);
- static void GetHotspotPropertyText(ScriptMethodParams ¶ms);
- static void GetInvAt(ScriptMethodParams ¶ms);
- static void GetInvGraphic(ScriptMethodParams ¶ms);
- static void GetInvName(ScriptMethodParams ¶ms);
- static void GetInvProperty(ScriptMethodParams ¶ms);
- static void GetInvPropertyText(ScriptMethodParams ¶ms);
- static void GetLocationName(ScriptMethodParams ¶ms);
- static void GetLocationType(ScriptMethodParams ¶ms);
- static void GetMessageText(ScriptMethodParams ¶ms);
- static void GetMIDIPosition(ScriptMethodParams ¶ms);
- static void GetMP3PosMillis(ScriptMethodParams ¶ms);
- static void GetObjectIDAtScreen(ScriptMethodParams ¶ms);
- static void GetObjectBaseline(ScriptMethodParams ¶ms);
- static void GetObjectGraphic(ScriptMethodParams ¶ms);
- static void GetObjectName(ScriptMethodParams ¶ms);
- static void GetObjectProperty(ScriptMethodParams ¶ms);
- static void GetObjectPropertyText(ScriptMethodParams ¶ms);
- static void GetObjectX(ScriptMethodParams ¶ms);
- static void GetObjectY(ScriptMethodParams ¶ms);
- static void GetPlayerCharacter(ScriptMethodParams ¶ms);
- static void GetRawTime(ScriptMethodParams ¶ms);
- static void GetRegionIDAtRoom(ScriptMethodParams ¶ms);
- static void Room_GetProperty(ScriptMethodParams ¶ms);
- static void GetRoomPropertyText(ScriptMethodParams ¶ms);
- static void GetSaveSlotDescription(ScriptMethodParams ¶ms);
- static void GetScalingAt(ScriptMethodParams ¶ms);
- static void GetSliderValue(ScriptMethodParams ¶ms);
- static void GetTextBoxText(ScriptMethodParams ¶ms);
- static void GetTextHeight(ScriptMethodParams ¶ms);
- static void GetTextWidth(ScriptMethodParams ¶ms);
- static void sc_GetTime(ScriptMethodParams ¶ms);
- static void get_translation(ScriptMethodParams ¶ms);
- static void GetTranslationName(ScriptMethodParams ¶ms);
- static void GetViewportX(ScriptMethodParams ¶ms);
- static void GetViewportY(ScriptMethodParams ¶ms);
- static void GetWalkableAreaAtRoom(ScriptMethodParams ¶ms);
- static void GetWalkableAreaAtScreen(ScriptMethodParams ¶ms);
- static void GiveScore(ScriptMethodParams ¶ms);
- static void HasPlayerBeenInRoom(ScriptMethodParams ¶ms);
- static void HideMouseCursor(ScriptMethodParams ¶ms);
- static void sc_inputbox(ScriptMethodParams ¶ms);
- static void InterfaceOff(ScriptMethodParams ¶ms);
- static void InterfaceOn(ScriptMethodParams ¶ms);
- static void IntToFloat(ScriptMethodParams ¶ms);
- static void sc_invscreen(ScriptMethodParams ¶ms);
- static void IsButtonDown(ScriptMethodParams ¶ms);
- static void IsChannelPlaying(ScriptMethodParams ¶ms);
- static void IsGamePaused(ScriptMethodParams ¶ms);
- static void IsGUIOn(ScriptMethodParams ¶ms);
- static void IsInteractionAvailable(ScriptMethodParams ¶ms);
- static void IsInventoryInteractionAvailable(ScriptMethodParams ¶ms);
- static void IsInterfaceEnabled(ScriptMethodParams ¶ms);
- static void IsKeyPressed(ScriptMethodParams ¶ms);
- static void IsMusicPlaying(ScriptMethodParams ¶ms);
- static void IsMusicVoxAvailable(ScriptMethodParams ¶ms);
- static void IsObjectAnimating(ScriptMethodParams ¶ms);
- static void IsObjectMoving(ScriptMethodParams ¶ms);
- static void IsObjectOn(ScriptMethodParams ¶ms);
- static void IsOverlayValid(ScriptMethodParams ¶ms);
- static void IsSoundPlaying(ScriptMethodParams ¶ms);
- static void IsTimerExpired(ScriptMethodParams ¶ms);
- static void IsTranslationAvailable(ScriptMethodParams ¶ms);
- static void IsVoxAvailable(ScriptMethodParams ¶ms);
- static void ListBoxAdd(ScriptMethodParams ¶ms);
- static void ListBoxClear(ScriptMethodParams ¶ms);
- static void ListBoxDirList(ScriptMethodParams ¶ms);
- static void ListBoxGetItemText(ScriptMethodParams ¶ms);
- static void ListBoxGetNumItems(ScriptMethodParams ¶ms);
- static void ListBoxGetSelected(ScriptMethodParams ¶ms);
- static void ListBoxRemove(ScriptMethodParams ¶ms);
- static void ListBoxSaveGameList(ScriptMethodParams ¶ms);
- static void ListBoxSetSelected(ScriptMethodParams ¶ms);
- static void ListBoxSetTopItem(ScriptMethodParams ¶ms);
- static void LoadImageFile(ScriptMethodParams ¶ms);
- static void LoadSaveSlotScreenshot(ScriptMethodParams ¶ms);
- static void lose_inventory(ScriptMethodParams ¶ms);
- static void LoseInventoryFromCharacter(ScriptMethodParams ¶ms);
- static void MergeObject(ScriptMethodParams ¶ms);
- static void MoveCharacter(ScriptMethodParams ¶ms);
- static void MoveCharacterBlocking(ScriptMethodParams ¶ms);
- static void MoveCharacterDirect(ScriptMethodParams ¶ms);
- static void MoveCharacterPath(ScriptMethodParams ¶ms);
- static void MoveCharacterStraight(ScriptMethodParams ¶ms);
- static void MoveCharacterToHotspot(ScriptMethodParams ¶ms);
- static void MoveCharacterToObject(ScriptMethodParams ¶ms);
- static void MoveObject(ScriptMethodParams ¶ms);
- static void MoveObjectDirect(ScriptMethodParams ¶ms);
- static void MoveOverlay(ScriptMethodParams ¶ms);
- static void MoveToWalkableArea(ScriptMethodParams ¶ms);
- static void NewRoom(ScriptMethodParams ¶ms);
- static void NewRoomEx(ScriptMethodParams ¶ms);
- static void NewRoomNPC(ScriptMethodParams ¶ms);
- static void ObjectOff(ScriptMethodParams ¶ms);
- static void ObjectOn(ScriptMethodParams ¶ms);
- static void ParseText(ScriptMethodParams ¶ms);
- static void PauseGame(ScriptMethodParams ¶ms);
- static void PlayAmbientSound(ScriptMethodParams ¶ms);
- static void play_flc_file(ScriptMethodParams ¶ms);
- static void PlayMP3File(ScriptMethodParams ¶ms);
- static void PlayMusicResetQueue(ScriptMethodParams ¶ms);
- static void PlayMusicQueued(ScriptMethodParams ¶ms);
- static void PlaySilentMIDI(ScriptMethodParams ¶ms);
- static void play_sound(ScriptMethodParams ¶ms);
- static void PlaySoundEx(ScriptMethodParams ¶ms);
- static void scrPlayVideo(ScriptMethodParams ¶ms);
- static void RoomProcessClick(ScriptMethodParams ¶ms);
- static void QuitGame(ScriptMethodParams ¶ms);
- static void __Rand(ScriptMethodParams ¶ms);
- static void RawClear(ScriptMethodParams ¶ms);
- static void RawDrawCircle(ScriptMethodParams ¶ms);
- static void RawDrawFrameTransparent(ScriptMethodParams ¶ms);
- static void RawDrawImage(ScriptMethodParams ¶ms);
- static void RawDrawImageOffset(ScriptMethodParams ¶ms);
- static void RawDrawImageResized(ScriptMethodParams ¶ms);
- static void RawDrawImageTransparent(ScriptMethodParams ¶ms);
- static void RawDrawLine(ScriptMethodParams ¶ms);
- static void RawDrawRectangle(ScriptMethodParams ¶ms);
- static void RawDrawTriangle(ScriptMethodParams ¶ms);
- static void ScPl_RawPrint(ScriptMethodParams ¶ms);
- static void RawPrintMessageWrapped(ScriptMethodParams ¶ms);
- static void RawRestoreScreen(ScriptMethodParams ¶ms);
- static void RawRestoreScreenTinted(ScriptMethodParams ¶ms);
- static void RawSaveScreen(ScriptMethodParams ¶ms);
- static void RawSetColor(ScriptMethodParams ¶ms);
- static void RawSetColorRGB(ScriptMethodParams ¶ms);
- static void RefreshMouse(ScriptMethodParams ¶ms);
- static void ReleaseCharacterView(ScriptMethodParams ¶ms);
- static void ReleaseViewport(ScriptMethodParams ¶ms);
- static void RemoveObjectTint(ScriptMethodParams ¶ms);
- static void RemoveOverlay(ScriptMethodParams ¶ms);
- static void RemoveWalkableArea(ScriptMethodParams ¶ms);
- static void ResetRoom(ScriptMethodParams ¶ms);
- static void restart_game(ScriptMethodParams ¶ms);
- static void restore_game_dialog(ScriptMethodParams ¶ms);
- static void RestoreGameSlot(ScriptMethodParams ¶ms);
- static void RestoreWalkableArea(ScriptMethodParams ¶ms);
- static void RunAGSGame(ScriptMethodParams ¶ms);
- static void RunCharacterInteraction(ScriptMethodParams ¶ms);
- static void RunDialog(ScriptMethodParams ¶ms);
- static void RunHotspotInteraction(ScriptMethodParams ¶ms);
- static void RunInventoryInteraction(ScriptMethodParams ¶ms);
- static void RunObjectInteraction(ScriptMethodParams ¶ms);
- static void RunRegionInteraction(ScriptMethodParams ¶ms);
- static void Said(ScriptMethodParams ¶ms);
- static void SaidUnknownWord(ScriptMethodParams ¶ms);
- static void SaveCursorForLocationChange(ScriptMethodParams ¶ms);
- static void save_game_dialog(ScriptMethodParams ¶ms);
- static void save_game(ScriptMethodParams ¶ms);
- static void SaveScreenShot(ScriptMethodParams ¶ms);
- static void SeekMIDIPosition(ScriptMethodParams ¶ms);
- static void SeekMODPattern(ScriptMethodParams ¶ms);
- static void SeekMP3PosMillis(ScriptMethodParams ¶ms);
- static void SetActiveInventory(ScriptMethodParams ¶ms);
- static void SetAmbientTint(ScriptMethodParams ¶ms);
- static void SetAreaLightLevel(ScriptMethodParams ¶ms);
- static void SetAreaScaling(ScriptMethodParams ¶ms);
- static void SetBackgroundFrame(ScriptMethodParams ¶ms);
- static void SetButtonPic(ScriptMethodParams ¶ms);
- static void SetButtonText(ScriptMethodParams ¶ms);
- static void SetChannelVolume(ScriptMethodParams ¶ms);
- static void SetCharacterBaseline(ScriptMethodParams ¶ms);
- static void SetCharacterClickable(ScriptMethodParams ¶ms);
- static void SetCharacterFrame(ScriptMethodParams ¶ms);
- static void SetCharacterIdle(ScriptMethodParams ¶ms);
- static void SetCharacterIgnoreLight(ScriptMethodParams ¶ms);
- static void SetCharacterIgnoreWalkbehinds(ScriptMethodParams ¶ms);
- static void SetCharacterProperty(ScriptMethodParams ¶ms);
- static void SetCharacterBlinkView(ScriptMethodParams ¶ms);
- static void SetCharacterSpeechView(ScriptMethodParams ¶ms);
- static void SetCharacterSpeed(ScriptMethodParams ¶ms);
- static void SetCharacterSpeedEx(ScriptMethodParams ¶ms);
- static void SetCharacterTransparency(ScriptMethodParams ¶ms);
- static void SetCharacterView(ScriptMethodParams ¶ms);
- static void SetCharacterViewEx(ScriptMethodParams ¶ms);
- static void SetCharacterViewOffset(ScriptMethodParams ¶ms);
- static void set_cursor_mode(ScriptMethodParams ¶ms);
- static void set_default_cursor(ScriptMethodParams ¶ms);
- static void SetDialogOption(ScriptMethodParams ¶ms);
- static void SetDigitalMasterVolume(ScriptMethodParams ¶ms);
- static void SetFadeColor(ScriptMethodParams ¶ms);
- static void SetFrameSound(ScriptMethodParams ¶ms);
- static void SetGameOption(ScriptMethodParams ¶ms);
- static void SetGameSpeed(ScriptMethodParams ¶ms);
- static void SetGlobalInt(ScriptMethodParams ¶ms);
- static void SetGlobalString(ScriptMethodParams ¶ms);
- static void SetGraphicalVariable(ScriptMethodParams ¶ms);
- static void SetGUIBackgroundPic(ScriptMethodParams ¶ms);
- static void SetGUIClickable(ScriptMethodParams ¶ms);
- static void SetGUIObjectEnabled(ScriptMethodParams ¶ms);
- static void SetGUIObjectPosition(ScriptMethodParams ¶ms);
- static void SetGUIObjectSize(ScriptMethodParams ¶ms);
- static void SetGUIPosition(ScriptMethodParams ¶ms);
- static void SetGUISize(ScriptMethodParams ¶ms);
- static void SetGUITransparency(ScriptMethodParams ¶ms);
- static void SetGUIZOrder(ScriptMethodParams ¶ms);
- static void SetInvItemName(ScriptMethodParams ¶ms);
- static void set_inv_item_pic(ScriptMethodParams ¶ms);
- static void SetInvDimensions(ScriptMethodParams ¶ms);
- static void SetLabelColor(ScriptMethodParams ¶ms);
- static void SetLabelFont(ScriptMethodParams ¶ms);
- static void SetLabelText(ScriptMethodParams ¶ms);
- static void SetMouseBounds(ScriptMethodParams ¶ms);
- static void set_mouse_cursor(ScriptMethodParams ¶ms);
- static void SetMousePosition(ScriptMethodParams ¶ms);
- static void SetMultitasking(ScriptMethodParams ¶ms);
- static void SetMusicMasterVolume(ScriptMethodParams ¶ms);
- static void SetMusicRepeat(ScriptMethodParams ¶ms);
- static void SetMusicVolume(ScriptMethodParams ¶ms);
- static void SetNextCursor(ScriptMethodParams ¶ms);
- static void SetNextScreenTransition(ScriptMethodParams ¶ms);
- static void SetNormalFont(ScriptMethodParams ¶ms);
- static void SetObjectBaseline(ScriptMethodParams ¶ms);
- static void SetObjectClickable(ScriptMethodParams ¶ms);
- static void SetObjectFrame(ScriptMethodParams ¶ms);
- static void SetObjectGraphic(ScriptMethodParams ¶ms);
- static void SetObjectIgnoreWalkbehinds(ScriptMethodParams ¶ms);
- static void SetObjectPosition(ScriptMethodParams ¶ms);
- static void SetObjectTint(ScriptMethodParams ¶ms);
- static void SetObjectTransparency(ScriptMethodParams ¶ms);
- static void SetObjectView(ScriptMethodParams ¶ms);
- static void SetPalRGB(ScriptMethodParams ¶ms);
- static void SetPlayerCharacter(ScriptMethodParams ¶ms);
- static void SetRegionTint(ScriptMethodParams ¶ms);
- static void SetRestartPoint(ScriptMethodParams ¶ms);
- static void SetScreenTransition(ScriptMethodParams ¶ms);
- static void SetSkipSpeech(ScriptMethodParams ¶ms);
- static void SetSliderValue(ScriptMethodParams ¶ms);
- static void SetSoundVolume(ScriptMethodParams ¶ms);
- static void SetSpeechFont(ScriptMethodParams ¶ms);
- static void SetSpeechStyle(ScriptMethodParams ¶ms);
- static void SetSpeechVolume(ScriptMethodParams ¶ms);
- static void SetTalkingColor(ScriptMethodParams ¶ms);
- static void SetTextBoxFont(ScriptMethodParams ¶ms);
- static void SetTextBoxText(ScriptMethodParams ¶ms);
- static void ScPl_SetTextOverlay(ScriptMethodParams ¶ms);
- static void SetTextWindowGUI(ScriptMethodParams ¶ms);
- static void script_SetTimer(ScriptMethodParams ¶ms);
- static void SetViewport(ScriptMethodParams ¶ms);
- static void SetVoiceMode(ScriptMethodParams ¶ms);
- static void SetWalkBehindBase(ScriptMethodParams ¶ms);
- static void ShakeScreen(ScriptMethodParams ¶ms);
- static void ShakeScreenBackground(ScriptMethodParams ¶ms);
- static void ShowMouseCursor(ScriptMethodParams ¶ms);
- static void SkipUntilCharacterStops(ScriptMethodParams ¶ms);
- static void StartCutscene(ScriptMethodParams ¶ms);
- static void scStartRecording(ScriptMethodParams ¶ms);
- static void StopAmbientSound(ScriptMethodParams ¶ms);
- static void stop_and_destroy_channel(ScriptMethodParams ¶ms);
- static void StopDialog(ScriptMethodParams ¶ms);
- static void StopMoving(ScriptMethodParams ¶ms);
- static void scr_StopMusic(ScriptMethodParams ¶ms);
- static void StopObjectMoving(ScriptMethodParams ¶ms);
- static void _sc_strcat(ScriptMethodParams ¶ms);
- static void ags_stricmp(ScriptMethodParams ¶ms);
- static void strcmp(ScriptMethodParams ¶ms);
- static void StrContains(ScriptMethodParams ¶ms);
- static void _sc_strcpy(ScriptMethodParams ¶ms);
- static void ScPl_sc_sprintf(ScriptMethodParams ¶ms);
- static void StrGetCharAt(ScriptMethodParams ¶ms);
- static void StringToInt(ScriptMethodParams ¶ms);
- static void strlen(ScriptMethodParams ¶ms);
- static void StrSetCharAt(ScriptMethodParams ¶ms);
- static void _sc_strlower(ScriptMethodParams ¶ms);
- static void _sc_strupper(ScriptMethodParams ¶ms);
- static void TintScreen(ScriptMethodParams ¶ms);
- static void UnPauseGame(ScriptMethodParams ¶ms);
- static void update_invorder(ScriptMethodParams ¶ms);
- static void UpdatePalette(ScriptMethodParams ¶ms);
- static void scrWait(ScriptMethodParams ¶ms);
- static void WaitKey(ScriptMethodParams ¶ms);
- static void WaitMouseKey(ScriptMethodParams ¶ms);
+ void FileOpenCMode(ScriptMethodParams ¶ms);
+ void FileRead(ScriptMethodParams ¶ms);
+ void FileReadInt(ScriptMethodParams ¶ms);
+ void FileReadRawChar(ScriptMethodParams ¶ms);
+ void FileReadRawInt(ScriptMethodParams ¶ms);
+ void FileWrite(ScriptMethodParams ¶ms);
+ void FileWriteInt(ScriptMethodParams ¶ms);
+ void FileWriteRawChar(ScriptMethodParams ¶ms);
+ void FileWriteRawLine(ScriptMethodParams ¶ms);
+ void FindGUIID(ScriptMethodParams ¶ms);
+ void FlipScreen(ScriptMethodParams ¶ms);
+ void FloatToInt(ScriptMethodParams ¶ms);
+ void FollowCharacter(ScriptMethodParams ¶ms);
+ void FollowCharacterEx(ScriptMethodParams ¶ms);
+ void GetBackgroundFrame(ScriptMethodParams ¶ms);
+ void GetButtonPic(ScriptMethodParams ¶ms);
+ void GetCharIDAtScreen(ScriptMethodParams ¶ms);
+ void GetCharacterProperty(ScriptMethodParams ¶ms);
+ void GetCharacterPropertyText(ScriptMethodParams ¶ms);
+ void GetCurrentMusic(ScriptMethodParams ¶ms);
+ void GetCursorMode(ScriptMethodParams ¶ms);
+ void GetDialogOption(ScriptMethodParams ¶ms);
+ void GetGameOption(ScriptMethodParams ¶ms);
+ void GetGameParameter(ScriptMethodParams ¶ms);
+ void GetGameSpeed(ScriptMethodParams ¶ms);
+ void GetGlobalInt(ScriptMethodParams ¶ms);
+ void GetGlobalString(ScriptMethodParams ¶ms);
+ void GetGraphicalVariable(ScriptMethodParams ¶ms);
+ void GetGUIAt(ScriptMethodParams ¶ms);
+ void GetGUIObjectAt(ScriptMethodParams ¶ms);
+ void GetHotspotIDAtScreen(ScriptMethodParams ¶ms);
+ void GetHotspotName(ScriptMethodParams ¶ms);
+ void GetHotspotPointX(ScriptMethodParams ¶ms);
+ void GetHotspotPointY(ScriptMethodParams ¶ms);
+ void GetHotspotProperty(ScriptMethodParams ¶ms);
+ void GetHotspotPropertyText(ScriptMethodParams ¶ms);
+ void GetInvAt(ScriptMethodParams ¶ms);
+ void GetInvGraphic(ScriptMethodParams ¶ms);
+ void GetInvName(ScriptMethodParams ¶ms);
+ void GetInvProperty(ScriptMethodParams ¶ms);
+ void GetInvPropertyText(ScriptMethodParams ¶ms);
+ void GetLocationName(ScriptMethodParams ¶ms);
+ void GetLocationType(ScriptMethodParams ¶ms);
+ void GetMessageText(ScriptMethodParams ¶ms);
+ void GetMIDIPosition(ScriptMethodParams ¶ms);
+ void GetMP3PosMillis(ScriptMethodParams ¶ms);
+ void GetObjectIDAtScreen(ScriptMethodParams ¶ms);
+ void GetObjectBaseline(ScriptMethodParams ¶ms);
+ void GetObjectGraphic(ScriptMethodParams ¶ms);
+ void GetObjectName(ScriptMethodParams ¶ms);
+ void GetObjectProperty(ScriptMethodParams ¶ms);
+ void GetObjectPropertyText(ScriptMethodParams ¶ms);
+ void GetObjectX(ScriptMethodParams ¶ms);
+ void GetObjectY(ScriptMethodParams ¶ms);
+ void GetPlayerCharacter(ScriptMethodParams ¶ms);
+ void GetRawTime(ScriptMethodParams ¶ms);
+ void GetRegionIDAtRoom(ScriptMethodParams ¶ms);
+ void Room_GetProperty(ScriptMethodParams ¶ms);
+ void GetRoomPropertyText(ScriptMethodParams ¶ms);
+ void GetSaveSlotDescription(ScriptMethodParams ¶ms);
+ void GetScalingAt(ScriptMethodParams ¶ms);
+ void GetSliderValue(ScriptMethodParams ¶ms);
+ void GetTextBoxText(ScriptMethodParams ¶ms);
+ void GetTextHeight(ScriptMethodParams ¶ms);
+ void GetTextWidth(ScriptMethodParams ¶ms);
+ void sc_GetTime(ScriptMethodParams ¶ms);
+ void get_translation(ScriptMethodParams ¶ms);
+ void GetTranslationName(ScriptMethodParams ¶ms);
+ void GetViewportX(ScriptMethodParams ¶ms);
+ void GetViewportY(ScriptMethodParams ¶ms);
+ void GetWalkableAreaAtRoom(ScriptMethodParams ¶ms);
+ void GetWalkableAreaAtScreen(ScriptMethodParams ¶ms);
+ void GiveScore(ScriptMethodParams ¶ms);
+ void HasPlayerBeenInRoom(ScriptMethodParams ¶ms);
+ void HideMouseCursor(ScriptMethodParams ¶ms);
+ void sc_inputbox(ScriptMethodParams ¶ms);
+ void InterfaceOff(ScriptMethodParams ¶ms);
+ void InterfaceOn(ScriptMethodParams ¶ms);
+ void IntToFloat(ScriptMethodParams ¶ms);
+ void sc_invscreen(ScriptMethodParams ¶ms);
+ void IsButtonDown(ScriptMethodParams ¶ms);
+ void IsChannelPlaying(ScriptMethodParams ¶ms);
+ void IsGamePaused(ScriptMethodParams ¶ms);
+ void IsGUIOn(ScriptMethodParams ¶ms);
+ void IsInteractionAvailable(ScriptMethodParams ¶ms);
+ void IsInventoryInteractionAvailable(ScriptMethodParams ¶ms);
+ void IsInterfaceEnabled(ScriptMethodParams ¶ms);
+ void IsKeyPressed(ScriptMethodParams ¶ms);
+ void IsMusicPlaying(ScriptMethodParams ¶ms);
+ void IsMusicVoxAvailable(ScriptMethodParams ¶ms);
+ void IsObjectAnimating(ScriptMethodParams ¶ms);
+ void IsObjectMoving(ScriptMethodParams ¶ms);
+ void IsObjectOn(ScriptMethodParams ¶ms);
+ void IsOverlayValid(ScriptMethodParams ¶ms);
+ void IsSoundPlaying(ScriptMethodParams ¶ms);
+ void IsTimerExpired(ScriptMethodParams ¶ms);
+ void IsTranslationAvailable(ScriptMethodParams ¶ms);
+ void IsVoxAvailable(ScriptMethodParams ¶ms);
+ void ListBoxAdd(ScriptMethodParams ¶ms);
+ void ListBoxClear(ScriptMethodParams ¶ms);
+ void ListBoxDirList(ScriptMethodParams ¶ms);
+ void ListBoxGetItemText(ScriptMethodParams ¶ms);
+ void ListBoxGetNumItems(ScriptMethodParams ¶ms);
+ void ListBoxGetSelected(ScriptMethodParams ¶ms);
+ void ListBoxRemove(ScriptMethodParams ¶ms);
+ void ListBoxSaveGameList(ScriptMethodParams ¶ms);
+ void ListBoxSetSelected(ScriptMethodParams ¶ms);
+ void ListBoxSetTopItem(ScriptMethodParams ¶ms);
+ void LoadImageFile(ScriptMethodParams ¶ms);
+ void LoadSaveSlotScreenshot(ScriptMethodParams ¶ms);
+ void lose_inventory(ScriptMethodParams ¶ms);
+ void LoseInventoryFromCharacter(ScriptMethodParams ¶ms);
+ void MergeObject(ScriptMethodParams ¶ms);
+ void MoveCharacter(ScriptMethodParams ¶ms);
+ void MoveCharacterBlocking(ScriptMethodParams ¶ms);
+ void MoveCharacterDirect(ScriptMethodParams ¶ms);
+ void MoveCharacterPath(ScriptMethodParams ¶ms);
+ void MoveCharacterStraight(ScriptMethodParams ¶ms);
+ void MoveCharacterToHotspot(ScriptMethodParams ¶ms);
+ void MoveCharacterToObject(ScriptMethodParams ¶ms);
+ void MoveObject(ScriptMethodParams ¶ms);
+ void MoveObjectDirect(ScriptMethodParams ¶ms);
+ void MoveOverlay(ScriptMethodParams ¶ms);
+ void MoveToWalkableArea(ScriptMethodParams ¶ms);
+ void NewRoom(ScriptMethodParams ¶ms);
+ void NewRoomEx(ScriptMethodParams ¶ms);
+ void NewRoomNPC(ScriptMethodParams ¶ms);
+ void ObjectOff(ScriptMethodParams ¶ms);
+ void ObjectOn(ScriptMethodParams ¶ms);
+ void ParseText(ScriptMethodParams ¶ms);
+ void PauseGame(ScriptMethodParams ¶ms);
+ void PlayAmbientSound(ScriptMethodParams ¶ms);
+ void play_flc_file(ScriptMethodParams ¶ms);
+ void PlayMP3File(ScriptMethodParams ¶ms);
+ void PlayMusicResetQueue(ScriptMethodParams ¶ms);
+ void PlayMusicQueued(ScriptMethodParams ¶ms);
+ void PlaySilentMIDI(ScriptMethodParams ¶ms);
+ void play_sound(ScriptMethodParams ¶ms);
+ void PlaySoundEx(ScriptMethodParams ¶ms);
+ void scrPlayVideo(ScriptMethodParams ¶ms);
+ void RoomProcessClick(ScriptMethodParams ¶ms);
+ void QuitGame(ScriptMethodParams ¶ms);
+ void __Rand(ScriptMethodParams ¶ms);
+ void RawClear(ScriptMethodParams ¶ms);
+ void RawDrawCircle(ScriptMethodParams ¶ms);
+ void RawDrawFrameTransparent(ScriptMethodParams ¶ms);
+ void RawDrawImage(ScriptMethodParams ¶ms);
+ void RawDrawImageOffset(ScriptMethodParams ¶ms);
+ void RawDrawImageResized(ScriptMethodParams ¶ms);
+ void RawDrawImageTransparent(ScriptMethodParams ¶ms);
+ void RawDrawLine(ScriptMethodParams ¶ms);
+ void RawDrawRectangle(ScriptMethodParams ¶ms);
+ void RawDrawTriangle(ScriptMethodParams ¶ms);
+ void ScPl_RawPrint(ScriptMethodParams ¶ms);
+ void RawPrintMessageWrapped(ScriptMethodParams ¶ms);
+ void RawRestoreScreen(ScriptMethodParams ¶ms);
+ void RawRestoreScreenTinted(ScriptMethodParams ¶ms);
+ void RawSaveScreen(ScriptMethodParams ¶ms);
+ void RawSetColor(ScriptMethodParams ¶ms);
+ void RawSetColorRGB(ScriptMethodParams ¶ms);
+ void RefreshMouse(ScriptMethodParams ¶ms);
+ void ReleaseCharacterView(ScriptMethodParams ¶ms);
+ void ReleaseViewport(ScriptMethodParams ¶ms);
+ void RemoveObjectTint(ScriptMethodParams ¶ms);
+ void RemoveOverlay(ScriptMethodParams ¶ms);
+ void RemoveWalkableArea(ScriptMethodParams ¶ms);
+ void ResetRoom(ScriptMethodParams ¶ms);
+ void restart_game(ScriptMethodParams ¶ms);
+ void restore_game_dialog(ScriptMethodParams ¶ms);
+ void RestoreGameSlot(ScriptMethodParams ¶ms);
+ void RestoreWalkableArea(ScriptMethodParams ¶ms);
+ void RunAGSGame(ScriptMethodParams ¶ms);
+ void RunCharacterInteraction(ScriptMethodParams ¶ms);
+ void RunDialog(ScriptMethodParams ¶ms);
+ void RunHotspotInteraction(ScriptMethodParams ¶ms);
+ void RunInventoryInteraction(ScriptMethodParams ¶ms);
+ void RunObjectInteraction(ScriptMethodParams ¶ms);
+ void RunRegionInteraction(ScriptMethodParams ¶ms);
+ void Said(ScriptMethodParams ¶ms);
+ void SaidUnknownWord(ScriptMethodParams ¶ms);
+ void SaveCursorForLocationChange(ScriptMethodParams ¶ms);
+ void save_game_dialog(ScriptMethodParams ¶ms);
+ void save_game(ScriptMethodParams ¶ms);
+ void SaveScreenShot(ScriptMethodParams ¶ms);
+ void SeekMIDIPosition(ScriptMethodParams ¶ms);
+ void SeekMODPattern(ScriptMethodParams ¶ms);
+ void SeekMP3PosMillis(ScriptMethodParams ¶ms);
+ void SetActiveInventory(ScriptMethodParams ¶ms);
+ void SetAmbientTint(ScriptMethodParams ¶ms);
+ void SetAreaLightLevel(ScriptMethodParams ¶ms);
+ void SetAreaScaling(ScriptMethodParams ¶ms);
+ void SetBackgroundFrame(ScriptMethodParams ¶ms);
+ void SetButtonPic(ScriptMethodParams ¶ms);
+ void SetButtonText(ScriptMethodParams ¶ms);
+ void SetChannelVolume(ScriptMethodParams ¶ms);
+ void SetCharacterBaseline(ScriptMethodParams ¶ms);
+ void SetCharacterClickable(ScriptMethodParams ¶ms);
+ void SetCharacterFrame(ScriptMethodParams ¶ms);
+ void SetCharacterIdle(ScriptMethodParams ¶ms);
+ void SetCharacterIgnoreLight(ScriptMethodParams ¶ms);
+ void SetCharacterIgnoreWalkbehinds(ScriptMethodParams ¶ms);
+ void SetCharacterProperty(ScriptMethodParams ¶ms);
+ void SetCharacterBlinkView(ScriptMethodParams ¶ms);
+ void SetCharacterSpeechView(ScriptMethodParams ¶ms);
+ void SetCharacterSpeed(ScriptMethodParams ¶ms);
+ void SetCharacterSpeedEx(ScriptMethodParams ¶ms);
+ void SetCharacterTransparency(ScriptMethodParams ¶ms);
+ void SetCharacterView(ScriptMethodParams ¶ms);
+ void SetCharacterViewEx(ScriptMethodParams ¶ms);
+ void SetCharacterViewOffset(ScriptMethodParams ¶ms);
+ void set_cursor_mode(ScriptMethodParams ¶ms);
+ void set_default_cursor(ScriptMethodParams ¶ms);
+ void SetDialogOption(ScriptMethodParams ¶ms);
+ void SetDigitalMasterVolume(ScriptMethodParams ¶ms);
+ void SetFadeColor(ScriptMethodParams ¶ms);
+ void SetFrameSound(ScriptMethodParams ¶ms);
+ void SetGameOption(ScriptMethodParams ¶ms);
+ void SetGameSpeed(ScriptMethodParams ¶ms);
+ void SetGlobalInt(ScriptMethodParams ¶ms);
+ void SetGlobalString(ScriptMethodParams ¶ms);
+ void SetGraphicalVariable(ScriptMethodParams ¶ms);
+ void SetGUIBackgroundPic(ScriptMethodParams ¶ms);
+ void SetGUIClickable(ScriptMethodParams ¶ms);
+ void SetGUIObjectEnabled(ScriptMethodParams ¶ms);
+ void SetGUIObjectPosition(ScriptMethodParams ¶ms);
+ void SetGUIObjectSize(ScriptMethodParams ¶ms);
+ void SetGUIPosition(ScriptMethodParams ¶ms);
+ void SetGUISize(ScriptMethodParams ¶ms);
+ void SetGUITransparency(ScriptMethodParams ¶ms);
+ void SetGUIZOrder(ScriptMethodParams ¶ms);
+ void SetInvItemName(ScriptMethodParams ¶ms);
+ void set_inv_item_pic(ScriptMethodParams ¶ms);
+ void SetInvDimensions(ScriptMethodParams ¶ms);
+ void SetLabelColor(ScriptMethodParams ¶ms);
+ void SetLabelFont(ScriptMethodParams ¶ms);
+ void SetLabelText(ScriptMethodParams ¶ms);
+ void SetMouseBounds(ScriptMethodParams ¶ms);
+ void set_mouse_cursor(ScriptMethodParams ¶ms);
+ void SetMousePosition(ScriptMethodParams ¶ms);
+ void SetMultitasking(ScriptMethodParams ¶ms);
+ void SetMusicMasterVolume(ScriptMethodParams ¶ms);
+ void SetMusicRepeat(ScriptMethodParams ¶ms);
+ void SetMusicVolume(ScriptMethodParams ¶ms);
+ void SetNextCursor(ScriptMethodParams ¶ms);
+ void SetNextScreenTransition(ScriptMethodParams ¶ms);
+ void SetNormalFont(ScriptMethodParams ¶ms);
+ void SetObjectBaseline(ScriptMethodParams ¶ms);
+ void SetObjectClickable(ScriptMethodParams ¶ms);
+ void SetObjectFrame(ScriptMethodParams ¶ms);
+ void SetObjectGraphic(ScriptMethodParams ¶ms);
+ void SetObjectIgnoreWalkbehinds(ScriptMethodParams ¶ms);
+ void SetObjectPosition(ScriptMethodParams ¶ms);
+ void SetObjectTint(ScriptMethodParams ¶ms);
+ void SetObjectTransparency(ScriptMethodParams ¶ms);
+ void SetObjectView(ScriptMethodParams ¶ms);
+ void SetPalRGB(ScriptMethodParams ¶ms);
+ void SetPlayerCharacter(ScriptMethodParams ¶ms);
+ void SetRegionTint(ScriptMethodParams ¶ms);
+ void SetRestartPoint(ScriptMethodParams ¶ms);
+ void SetScreenTransition(ScriptMethodParams ¶ms);
+ void SetSkipSpeech(ScriptMethodParams ¶ms);
+ void SetSliderValue(ScriptMethodParams ¶ms);
+ void SetSoundVolume(ScriptMethodParams ¶ms);
+ void SetSpeechFont(ScriptMethodParams ¶ms);
+ void SetSpeechStyle(ScriptMethodParams ¶ms);
+ void SetSpeechVolume(ScriptMethodParams ¶ms);
+ void SetTalkingColor(ScriptMethodParams ¶ms);
+ void SetTextBoxFont(ScriptMethodParams ¶ms);
+ void SetTextBoxText(ScriptMethodParams ¶ms);
+ void ScPl_SetTextOverlay(ScriptMethodParams ¶ms);
+ void SetTextWindowGUI(ScriptMethodParams ¶ms);
+ void script_SetTimer(ScriptMethodParams ¶ms);
+ void SetViewport(ScriptMethodParams ¶ms);
+ void SetVoiceMode(ScriptMethodParams ¶ms);
+ void SetWalkBehindBase(ScriptMethodParams ¶ms);
+ void ShakeScreen(ScriptMethodParams ¶ms);
+ void ShakeScreenBackground(ScriptMethodParams ¶ms);
+ void ShowMouseCursor(ScriptMethodParams ¶ms);
+ void SkipUntilCharacterStops(ScriptMethodParams ¶ms);
+ void StartCutscene(ScriptMethodParams ¶ms);
+ void scStartRecording(ScriptMethodParams ¶ms);
+ void StopAmbientSound(ScriptMethodParams ¶ms);
+ void stop_and_destroy_channel(ScriptMethodParams ¶ms);
+ void StopDialog(ScriptMethodParams ¶ms);
+ void StopMoving(ScriptMethodParams ¶ms);
+ void scr_StopMusic(ScriptMethodParams ¶ms);
+ void StopObjectMoving(ScriptMethodParams ¶ms);
+ void _sc_strcat(ScriptMethodParams ¶ms);
+ void ags_stricmp(ScriptMethodParams ¶ms);
+ void strcmp(ScriptMethodParams ¶ms);
+ void StrContains(ScriptMethodParams ¶ms);
+ void _sc_strcpy(ScriptMethodParams ¶ms);
+ void ScPl_sc_sprintf(ScriptMethodParams ¶ms);
+ void StrGetCharAt(ScriptMethodParams ¶ms);
+ void StringToInt(ScriptMethodParams ¶ms);
+ void strlen(ScriptMethodParams ¶ms);
+ void StrSetCharAt(ScriptMethodParams ¶ms);
+ void _sc_strlower(ScriptMethodParams ¶ms);
+ void _sc_strupper(ScriptMethodParams ¶ms);
+ void TintScreen(ScriptMethodParams ¶ms);
+ void UnPauseGame(ScriptMethodParams ¶ms);
+ void update_invorder(ScriptMethodParams ¶ms);
+ void UpdatePalette(ScriptMethodParams ¶ms);
+ void scrWait(ScriptMethodParams ¶ms);
+ void WaitKey(ScriptMethodParams ¶ms);
+ void WaitMouseKey(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/gui.cpp b/engines/ags/plugins/core/gui.cpp
index 3ec2d4fdc1..c659f65c1e 100644
--- a/engines/ags/plugins/core/gui.cpp
+++ b/engines/ags/plugins/core/gui.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void GUI::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(GUI::Centre^0, Centre);
SCRIPT_METHOD_EXT(GUI::GetAtScreenXY^2, GetGUIAtLocation);
SCRIPT_METHOD_EXT(GUI::SetPosition^2, SetPosition);
@@ -53,6 +54,7 @@ void GUI::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(GUI::set_Y, SetY);
SCRIPT_METHOD_EXT(GUI::get_ZOrder, GetZOrder);
SCRIPT_METHOD_EXT(GUI::set_ZOrder, SetZOrder);
+ */
}
void GUI::Centre(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/gui.h b/engines/ags/plugins/core/gui.h
index 2663167f79..95fe961a8d 100644
--- a/engines/ags/plugins/core/gui.h
+++ b/engines/ags/plugins/core/gui.h
@@ -23,41 +23,43 @@
#ifndef AGS_PLUGINS_CORE_GUI_H
#define AGS_PLUGINS_CORE_GUI_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class GUI : public ScriptContainer {
+ SCRIPT_HASH(GUI)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~GUI() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void Centre(ScriptMethodParams ¶ms);
- static void GetGUIAtLocation(ScriptMethodParams ¶ms);
- static void SetPosition(ScriptMethodParams ¶ms);
- static void SetSize(ScriptMethodParams ¶ms);
- static void GetBackgroundGraphic(ScriptMethodParams ¶ms);
- static void SetBackgroundGraphic(ScriptMethodParams ¶ms);
- static void GetClickable(ScriptMethodParams ¶ms);
- static void SetClickable(ScriptMethodParams ¶ms);
- static void GetControlCount(ScriptMethodParams ¶ms);
- static void GetiControls(ScriptMethodParams ¶ms);
- static void GetHeight(ScriptMethodParams ¶ms);
- static void SetHeight(ScriptMethodParams ¶ms);
- static void GetID(ScriptMethodParams ¶ms);
- static void GetTransparency(ScriptMethodParams ¶ms);
- static void SetTransparency(ScriptMethodParams ¶ms);
- static void GetVisible(ScriptMethodParams ¶ms);
- static void SetVisible(ScriptMethodParams ¶ms);
- static void GetWidth(ScriptMethodParams ¶ms);
- static void SetWidth(ScriptMethodParams ¶ms);
- static void GetX(ScriptMethodParams ¶ms);
- static void SetX(ScriptMethodParams ¶ms);
- static void GetY(ScriptMethodParams ¶ms);
- static void SetY(ScriptMethodParams ¶ms);
- static void GetZOrder(ScriptMethodParams ¶ms);
- static void SetZOrder(ScriptMethodParams ¶ms);
+ void Centre(ScriptMethodParams ¶ms);
+ void GetGUIAtLocation(ScriptMethodParams ¶ms);
+ void SetPosition(ScriptMethodParams ¶ms);
+ void SetSize(ScriptMethodParams ¶ms);
+ void GetBackgroundGraphic(ScriptMethodParams ¶ms);
+ void SetBackgroundGraphic(ScriptMethodParams ¶ms);
+ void GetClickable(ScriptMethodParams ¶ms);
+ void SetClickable(ScriptMethodParams ¶ms);
+ void GetControlCount(ScriptMethodParams ¶ms);
+ void GetiControls(ScriptMethodParams ¶ms);
+ void GetHeight(ScriptMethodParams ¶ms);
+ void SetHeight(ScriptMethodParams ¶ms);
+ void GetID(ScriptMethodParams ¶ms);
+ void GetTransparency(ScriptMethodParams ¶ms);
+ void SetTransparency(ScriptMethodParams ¶ms);
+ void GetVisible(ScriptMethodParams ¶ms);
+ void SetVisible(ScriptMethodParams ¶ms);
+ void GetWidth(ScriptMethodParams ¶ms);
+ void SetWidth(ScriptMethodParams ¶ms);
+ void GetX(ScriptMethodParams ¶ms);
+ void SetX(ScriptMethodParams ¶ms);
+ void GetY(ScriptMethodParams ¶ms);
+ void SetY(ScriptMethodParams ¶ms);
+ void GetZOrder(ScriptMethodParams ¶ms);
+ void SetZOrder(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/gui_control.cpp b/engines/ags/plugins/core/gui_control.cpp
index bca335d680..e4da0fcc8a 100644
--- a/engines/ags/plugins/core/gui_control.cpp
+++ b/engines/ags/plugins/core/gui_control.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void GUIControl::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(GUIControl::BringToFront^0, BringToFront);
SCRIPT_METHOD_EXT(GUIControl::GetAtScreenXY^2, GetGUIControlAtLocation);
SCRIPT_METHOD_EXT(GUIControl::SendToBack^0, SendToBack);
@@ -55,6 +56,7 @@ void GUIControl::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(GUIControl::set_X, SetX);
SCRIPT_METHOD_EXT(GUIControl::get_Y, GetY);
SCRIPT_METHOD_EXT(GUIControl::set_Y, SetY);
+ */
}
void GUIControl::BringToFront(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/gui_control.h b/engines/ags/plugins/core/gui_control.h
index efbe5a60a5..1256247e36 100644
--- a/engines/ags/plugins/core/gui_control.h
+++ b/engines/ags/plugins/core/gui_control.h
@@ -23,43 +23,45 @@
#ifndef AGS_PLUGINS_CORE_GUI_CONTROL_H
#define AGS_PLUGINS_CORE_GUI_CONTROL_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class GUIControl : public ScriptContainer {
+ SCRIPT_HASH(GUIControl)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~GUIControl() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void BringToFront(ScriptMethodParams ¶ms);
- static void GetGUIControlAtLocation(ScriptMethodParams ¶ms);
- static void SendToBack(ScriptMethodParams ¶ms);
- static void SetPosition(ScriptMethodParams ¶ms);
- static void SetSize(ScriptMethodParams ¶ms);
- static void GetAsButton(ScriptMethodParams ¶ms);
- static void GetAsInvWindow(ScriptMethodParams ¶ms);
- static void GetAsLabel(ScriptMethodParams ¶ms);
- static void GetAsListBox(ScriptMethodParams ¶ms);
- static void GetAsSlider(ScriptMethodParams ¶ms);
- static void GetAsTextBox(ScriptMethodParams ¶ms);
- static void GetClickable(ScriptMethodParams ¶ms);
- static void SetClickable(ScriptMethodParams ¶ms);
- static void GetEnabled(ScriptMethodParams ¶ms);
- static void SetEnabled(ScriptMethodParams ¶ms);
- static void GetHeight(ScriptMethodParams ¶ms);
- static void SetHeight(ScriptMethodParams ¶ms);
- static void GetID(ScriptMethodParams ¶ms);
- static void GetOwningGUI(ScriptMethodParams ¶ms);
- static void GetVisible(ScriptMethodParams ¶ms);
- static void SetVisible(ScriptMethodParams ¶ms);
- static void GetWidth(ScriptMethodParams ¶ms);
- static void SetWidth(ScriptMethodParams ¶ms);
- static void GetX(ScriptMethodParams ¶ms);
- static void SetX(ScriptMethodParams ¶ms);
- static void GetY(ScriptMethodParams ¶ms);
- static void SetY(ScriptMethodParams ¶ms);
+ void BringToFront(ScriptMethodParams ¶ms);
+ void GetGUIControlAtLocation(ScriptMethodParams ¶ms);
+ void SendToBack(ScriptMethodParams ¶ms);
+ void SetPosition(ScriptMethodParams ¶ms);
+ void SetSize(ScriptMethodParams ¶ms);
+ void GetAsButton(ScriptMethodParams ¶ms);
+ void GetAsInvWindow(ScriptMethodParams ¶ms);
+ void GetAsLabel(ScriptMethodParams ¶ms);
+ void GetAsListBox(ScriptMethodParams ¶ms);
+ void GetAsSlider(ScriptMethodParams ¶ms);
+ void GetAsTextBox(ScriptMethodParams ¶ms);
+ void GetClickable(ScriptMethodParams ¶ms);
+ void SetClickable(ScriptMethodParams ¶ms);
+ void GetEnabled(ScriptMethodParams ¶ms);
+ void SetEnabled(ScriptMethodParams ¶ms);
+ void GetHeight(ScriptMethodParams ¶ms);
+ void SetHeight(ScriptMethodParams ¶ms);
+ void GetID(ScriptMethodParams ¶ms);
+ void GetOwningGUI(ScriptMethodParams ¶ms);
+ void GetVisible(ScriptMethodParams ¶ms);
+ void SetVisible(ScriptMethodParams ¶ms);
+ void GetWidth(ScriptMethodParams ¶ms);
+ void SetWidth(ScriptMethodParams ¶ms);
+ void GetX(ScriptMethodParams ¶ms);
+ void SetX(ScriptMethodParams ¶ms);
+ void GetY(ScriptMethodParams ¶ms);
+ void SetY(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/hotspot.cpp b/engines/ags/plugins/core/hotspot.cpp
index c7fcc90844..05cdb9a916 100644
--- a/engines/ags/plugins/core/hotspot.cpp
+++ b/engines/ags/plugins/core/hotspot.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void Hotspot::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(Hotspot::GetAtRoomXY^2, GetHotspotAtRoom);
SCRIPT_METHOD_EXT(Hotspot::GetAtScreenXY^2, GetHotspotAtScreen);
SCRIPT_METHOD_EXT(Hotspot::GetName^1, GetName);
@@ -41,6 +42,7 @@ void Hotspot::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Hotspot::get_Name, GetName_New);
SCRIPT_METHOD_EXT(Hotspot::get_WalkToX, GetWalkToX);
SCRIPT_METHOD_EXT(Hotspot::get_WalkToY, GetWalkToY);
+ */
}
void Hotspot::GetHotspotAtRoom(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/hotspot.h b/engines/ags/plugins/core/hotspot.h
index da9ef4b126..0c72ffa7c7 100644
--- a/engines/ags/plugins/core/hotspot.h
+++ b/engines/ags/plugins/core/hotspot.h
@@ -23,29 +23,31 @@
#ifndef AGS_PLUGINS_CORE_HOTSPOT_H
#define AGS_PLUGINS_CORE_HOTSPOT_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Hotspot : public ScriptContainer {
+ SCRIPT_HASH(Hotspot)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~Hotspot() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void GetHotspotAtRoom(ScriptMethodParams ¶ms);
- static void GetHotspotAtScreen(ScriptMethodParams ¶ms);
- static void GetName(ScriptMethodParams ¶ms);
- static void GetProperty(ScriptMethodParams ¶ms);
- static void GetPropertyText(ScriptMethodParams ¶ms);
- static void GetTextProperty(ScriptMethodParams ¶ms);
- static void RunInteraction(ScriptMethodParams ¶ms);
- static void GetEnabled(ScriptMethodParams ¶ms);
- static void SetEnabled(ScriptMethodParams ¶ms);
- static void GetID(ScriptMethodParams ¶ms);
- static void GetName_New(ScriptMethodParams ¶ms);
- static void GetWalkToX(ScriptMethodParams ¶ms);
- static void GetWalkToY(ScriptMethodParams ¶ms);
+ void GetHotspotAtRoom(ScriptMethodParams ¶ms);
+ void GetHotspotAtScreen(ScriptMethodParams ¶ms);
+ void GetName(ScriptMethodParams ¶ms);
+ void GetProperty(ScriptMethodParams ¶ms);
+ void GetPropertyText(ScriptMethodParams ¶ms);
+ void GetTextProperty(ScriptMethodParams ¶ms);
+ void RunInteraction(ScriptMethodParams ¶ms);
+ void GetEnabled(ScriptMethodParams ¶ms);
+ void SetEnabled(ScriptMethodParams ¶ms);
+ void GetID(ScriptMethodParams ¶ms);
+ void GetName_New(ScriptMethodParams ¶ms);
+ void GetWalkToX(ScriptMethodParams ¶ms);
+ void GetWalkToY(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/inv_window.cpp b/engines/ags/plugins/core/inv_window.cpp
index fc91656a60..1a9b5c4c23 100644
--- a/engines/ags/plugins/core/inv_window.cpp
+++ b/engines/ags/plugins/core/inv_window.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void InvWindow::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(InvWindow::ScrollDown^0, ScrollDown);
SCRIPT_METHOD_EXT(InvWindow::ScrollUp^0, ScrollUp);
SCRIPT_METHOD_EXT(InvWindow::get_CharacterToUse, GetCharacterToUse);
@@ -42,6 +43,7 @@ void InvWindow::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(InvWindow::get_RowCount, GetRowCount);
SCRIPT_METHOD_EXT(InvWindow::get_TopItem, GetTopItem);
SCRIPT_METHOD_EXT(InvWindow::set_TopItem, SetTopItem);
+ */
}
void InvWindow::ScrollDown(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/inv_window.h b/engines/ags/plugins/core/inv_window.h
index b86ae3bcc6..c94f12ea28 100644
--- a/engines/ags/plugins/core/inv_window.h
+++ b/engines/ags/plugins/core/inv_window.h
@@ -23,30 +23,32 @@
#ifndef AGS_PLUGINS_CORE_INV_WINDOW_H
#define AGS_PLUGINS_CORE_INV_WINDOW_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class InvWindow : public ScriptContainer {
+ SCRIPT_HASH(InvWindow)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~InvWindow() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void ScrollDown(ScriptMethodParams ¶ms);
- static void ScrollUp(ScriptMethodParams ¶ms);
- static void GetCharacterToUse(ScriptMethodParams ¶ms);
- static void SetCharacterToUse(ScriptMethodParams ¶ms);
- static void GetItemAtIndex(ScriptMethodParams ¶ms);
- static void GetItemCount(ScriptMethodParams ¶ms);
- static void GetItemHeight(ScriptMethodParams ¶ms);
- static void SetItemHeight(ScriptMethodParams ¶ms);
- static void GetItemWidth(ScriptMethodParams ¶ms);
- static void SetItemWidth(ScriptMethodParams ¶ms);
- static void GetItemsPerRow(ScriptMethodParams ¶ms);
- static void GetRowCount(ScriptMethodParams ¶ms);
- static void GetTopItem(ScriptMethodParams ¶ms);
- static void SetTopItem(ScriptMethodParams ¶ms);
+ void ScrollDown(ScriptMethodParams ¶ms);
+ void ScrollUp(ScriptMethodParams ¶ms);
+ void GetCharacterToUse(ScriptMethodParams ¶ms);
+ void SetCharacterToUse(ScriptMethodParams ¶ms);
+ void GetItemAtIndex(ScriptMethodParams ¶ms);
+ void GetItemCount(ScriptMethodParams ¶ms);
+ void GetItemHeight(ScriptMethodParams ¶ms);
+ void SetItemHeight(ScriptMethodParams ¶ms);
+ void GetItemWidth(ScriptMethodParams ¶ms);
+ void SetItemWidth(ScriptMethodParams ¶ms);
+ void GetItemsPerRow(ScriptMethodParams ¶ms);
+ void GetRowCount(ScriptMethodParams ¶ms);
+ void GetTopItem(ScriptMethodParams ¶ms);
+ void SetTopItem(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/inventory_item.cpp b/engines/ags/plugins/core/inventory_item.cpp
index 643347ca88..1106f851fe 100644
--- a/engines/ags/plugins/core/inventory_item.cpp
+++ b/engines/ags/plugins/core/inventory_item.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void InventoryItem::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(InventoryItem::GetAtScreenXY ^ 2, GetInvAtLocation);
SCRIPT_METHOD_EXT(InventoryItem::IsInteractionAvailable ^ 1, CheckInteractionAvailable);
SCRIPT_METHOD_EXT(InventoryItem::GetName ^ 1, GetName);
@@ -43,6 +44,7 @@ void InventoryItem::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(InventoryItem::get_ID, GetID);
SCRIPT_METHOD_EXT(InventoryItem::get_Name, GetName_New);
SCRIPT_METHOD_EXT(InventoryItem::set_Name, SetName);
+ */
}
void InventoryItem::GetInvAtLocation(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/inventory_item.h b/engines/ags/plugins/core/inventory_item.h
index cd85094203..b194c2be36 100644
--- a/engines/ags/plugins/core/inventory_item.h
+++ b/engines/ags/plugins/core/inventory_item.h
@@ -23,30 +23,32 @@
#ifndef AGS_PLUGINS_CORE_INVENTORY_ITEM_H
#define AGS_PLUGINS_CORE_INVENTORY_ITEM_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class InventoryItem : public ScriptContainer {
+ SCRIPT_HASH(InventoryItem)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~InventoryItem() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void GetInvAtLocation(ScriptMethodParams ¶ms);
- static void CheckInteractionAvailable(ScriptMethodParams ¶ms);
- static void GetName(ScriptMethodParams ¶ms);
- static void GetProperty(ScriptMethodParams ¶ms);
- static void GetPropertyText(ScriptMethodParams ¶ms);
- static void GetTextProperty(ScriptMethodParams ¶ms);
- static void RunInteraction(ScriptMethodParams ¶ms);
- static void SetName(ScriptMethodParams ¶ms);
- static void GetCursorGraphic(ScriptMethodParams ¶ms);
- static void SetCursorGraphic(ScriptMethodParams ¶ms);
- static void GetGraphic(ScriptMethodParams ¶ms);
- static void SetGraphic(ScriptMethodParams ¶ms);
- static void GetID(ScriptMethodParams ¶ms);
- static void GetName_New(ScriptMethodParams ¶ms);
+ void GetInvAtLocation(ScriptMethodParams ¶ms);
+ void CheckInteractionAvailable(ScriptMethodParams ¶ms);
+ void GetName(ScriptMethodParams ¶ms);
+ void GetProperty(ScriptMethodParams ¶ms);
+ void GetPropertyText(ScriptMethodParams ¶ms);
+ void GetTextProperty(ScriptMethodParams ¶ms);
+ void RunInteraction(ScriptMethodParams ¶ms);
+ void SetName(ScriptMethodParams ¶ms);
+ void GetCursorGraphic(ScriptMethodParams ¶ms);
+ void SetCursorGraphic(ScriptMethodParams ¶ms);
+ void GetGraphic(ScriptMethodParams ¶ms);
+ void SetGraphic(ScriptMethodParams ¶ms);
+ void GetID(ScriptMethodParams ¶ms);
+ void GetName_New(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/label.cpp b/engines/ags/plugins/core/label.cpp
index ecfdb42f25..11f9f344e6 100644
--- a/engines/ags/plugins/core/label.cpp
+++ b/engines/ags/plugins/core/label.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void Label::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(Label::GetText^1, GetText);
SCRIPT_METHOD_EXT(Label::SetText^1, SetText);
SCRIPT_METHOD_EXT(Label::get_Font, GetFont);
@@ -36,6 +37,7 @@ void Label::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Label::set_Text, SetText);
SCRIPT_METHOD_EXT(Label::get_TextColor, GetColor);
SCRIPT_METHOD_EXT(Label::set_TextColor, SetColor);
+ */
}
void Label::GetText(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/label.h b/engines/ags/plugins/core/label.h
index 26dfe6838a..f5f7b12a17 100644
--- a/engines/ags/plugins/core/label.h
+++ b/engines/ags/plugins/core/label.h
@@ -23,23 +23,25 @@
#ifndef AGS_PLUGINS_CORE_LABEL_H
#define AGS_PLUGINS_CORE_LABEL_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Label : public ScriptContainer {
+ SCRIPT_HASH(Label)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~Label() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void GetText(ScriptMethodParams ¶ms);
- static void SetText(ScriptMethodParams ¶ms);
- static void GetFont(ScriptMethodParams ¶ms);
- static void SetFont(ScriptMethodParams ¶ms);
- static void GetText_New(ScriptMethodParams ¶ms);
- static void GetColor(ScriptMethodParams ¶ms);
- static void SetColor(ScriptMethodParams ¶ms);
+ void GetText(ScriptMethodParams ¶ms);
+ void SetText(ScriptMethodParams ¶ms);
+ void GetFont(ScriptMethodParams ¶ms);
+ void SetFont(ScriptMethodParams ¶ms);
+ void GetText_New(ScriptMethodParams ¶ms);
+ void GetColor(ScriptMethodParams ¶ms);
+ void SetColor(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/listbox.cpp b/engines/ags/plugins/core/listbox.cpp
index 8da3ab7463..67dad5ab77 100644
--- a/engines/ags/plugins/core/listbox.cpp
+++ b/engines/ags/plugins/core/listbox.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void Listbox::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(ListBox::AddItem^1, AddItem);
SCRIPT_METHOD_EXT(ListBox::Clear^0, Clear);
SCRIPT_METHOD_EXT(ListBox::FillDirList^1, FillDirList);
@@ -54,6 +55,7 @@ void Listbox::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(ListBox::set_SelectedIndex, SetSelectedIndex);
SCRIPT_METHOD_EXT(ListBox::get_TopItem, GetTopItem);
SCRIPT_METHOD_EXT(ListBox::set_TopItem, SetTopItem);
+ */
}
void Listbox::AddItem(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/listbox.h b/engines/ags/plugins/core/listbox.h
index f00c6c424c..1c78d9a597 100644
--- a/engines/ags/plugins/core/listbox.h
+++ b/engines/ags/plugins/core/listbox.h
@@ -23,41 +23,43 @@
#ifndef AGS_PLUGINS_CORE_LISTBOX_H
#define AGS_PLUGINS_CORE_LISTBOX_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Listbox : public ScriptContainer {
+ SCRIPT_HASH(Listbox)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~Listbox() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void AddItem(ScriptMethodParams ¶ms);
- static void Clear(ScriptMethodParams ¶ms);
- static void FillDirList(ScriptMethodParams ¶ms);
- static void FillSaveGameList(ScriptMethodParams ¶ms);
- static void GetItemAtLocation(ScriptMethodParams ¶ms);
- static void GetItemText(ScriptMethodParams ¶ms);
- static void InsertItemAt(ScriptMethodParams ¶ms);
- static void RemoveItem(ScriptMethodParams ¶ms);
- static void ScrollDown(ScriptMethodParams ¶ms);
- static void ScrollUp(ScriptMethodParams ¶ms);
- static void SetItemText(ScriptMethodParams ¶ms);
- static void GetFont(ScriptMethodParams ¶ms);
- static void SetFont(ScriptMethodParams ¶ms);
- static void GetHideBorder(ScriptMethodParams ¶ms);
- static void SetHideBorder(ScriptMethodParams ¶ms);
- static void GetHideScrollArrows(ScriptMethodParams ¶ms);
- static void SetHideScrollArrows(ScriptMethodParams ¶ms);
- static void GetItemCount(ScriptMethodParams ¶ms);
- static void GetItems(ScriptMethodParams ¶ms);
- static void GetRowCount(ScriptMethodParams ¶ms);
- static void GetSaveGameSlots(ScriptMethodParams ¶ms);
- static void GetSelectedIndex(ScriptMethodParams ¶ms);
- static void SetSelectedIndex(ScriptMethodParams ¶ms);
- static void GetTopItem(ScriptMethodParams ¶ms);
- static void SetTopItem(ScriptMethodParams ¶ms);
+ void AddItem(ScriptMethodParams ¶ms);
+ void Clear(ScriptMethodParams ¶ms);
+ void FillDirList(ScriptMethodParams ¶ms);
+ void FillSaveGameList(ScriptMethodParams ¶ms);
+ void GetItemAtLocation(ScriptMethodParams ¶ms);
+ void GetItemText(ScriptMethodParams ¶ms);
+ void InsertItemAt(ScriptMethodParams ¶ms);
+ void RemoveItem(ScriptMethodParams ¶ms);
+ void ScrollDown(ScriptMethodParams ¶ms);
+ void ScrollUp(ScriptMethodParams ¶ms);
+ void SetItemText(ScriptMethodParams ¶ms);
+ void GetFont(ScriptMethodParams ¶ms);
+ void SetFont(ScriptMethodParams ¶ms);
+ void GetHideBorder(ScriptMethodParams ¶ms);
+ void SetHideBorder(ScriptMethodParams ¶ms);
+ void GetHideScrollArrows(ScriptMethodParams ¶ms);
+ void SetHideScrollArrows(ScriptMethodParams ¶ms);
+ void GetItemCount(ScriptMethodParams ¶ms);
+ void GetItems(ScriptMethodParams ¶ms);
+ void GetRowCount(ScriptMethodParams ¶ms);
+ void GetSaveGameSlots(ScriptMethodParams ¶ms);
+ void GetSelectedIndex(ScriptMethodParams ¶ms);
+ void SetSelectedIndex(ScriptMethodParams ¶ms);
+ void GetTopItem(ScriptMethodParams ¶ms);
+ void SetTopItem(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/math.cpp b/engines/ags/plugins/core/math.cpp
index faa8f3e553..1a324b13f2 100644
--- a/engines/ags/plugins/core/math.cpp
+++ b/engines/ags/plugins/core/math.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void Math::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(Maths::ArcCos^1, ArcCos);
SCRIPT_METHOD_EXT(Maths::ArcSin^1, ArcSin);
SCRIPT_METHOD_EXT(Maths::ArcTan^1, ArcTan);
@@ -46,6 +47,7 @@ void Math::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Maths::Tan^1, Tan);
SCRIPT_METHOD_EXT(Maths::Tanh^1, Tanh);
SCRIPT_METHOD_EXT(Maths::get_Pi, GetPi);
+ */
}
void Math::ArcCos(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/math.h b/engines/ags/plugins/core/math.h
index 133231dbdd..e22a954942 100644
--- a/engines/ags/plugins/core/math.h
+++ b/engines/ags/plugins/core/math.h
@@ -23,34 +23,36 @@
#ifndef AGS_PLUGINS_CORE_MATH_H
#define AGS_PLUGINS_CORE_MATH_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Math : public ScriptContainer {
+ SCRIPT_HASH(Math)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~Math() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void ArcCos(ScriptMethodParams ¶ms);
- static void ArcSin(ScriptMethodParams ¶ms);
- static void ArcTan(ScriptMethodParams ¶ms);
- static void ArcTan2(ScriptMethodParams ¶ms);
- static void Cos(ScriptMethodParams ¶ms);
- static void Cosh(ScriptMethodParams ¶ms);
- static void DegreesToRadians(ScriptMethodParams ¶ms);
- static void Exp(ScriptMethodParams ¶ms);
- static void Log(ScriptMethodParams ¶ms);
- static void Log10(ScriptMethodParams ¶ms);
- static void RadiansToDegrees(ScriptMethodParams ¶ms);
- static void RaiseToPower(ScriptMethodParams ¶ms);
- static void Sin(ScriptMethodParams ¶ms);
- static void Sinh(ScriptMethodParams ¶ms);
- static void Sqrt(ScriptMethodParams ¶ms);
- static void Tan(ScriptMethodParams ¶ms);
- static void Tanh(ScriptMethodParams ¶ms);
- static void GetPi(ScriptMethodParams ¶ms);
+ void ArcCos(ScriptMethodParams ¶ms);
+ void ArcSin(ScriptMethodParams ¶ms);
+ void ArcTan(ScriptMethodParams ¶ms);
+ void ArcTan2(ScriptMethodParams ¶ms);
+ void Cos(ScriptMethodParams ¶ms);
+ void Cosh(ScriptMethodParams ¶ms);
+ void DegreesToRadians(ScriptMethodParams ¶ms);
+ void Exp(ScriptMethodParams ¶ms);
+ void Log(ScriptMethodParams ¶ms);
+ void Log10(ScriptMethodParams ¶ms);
+ void RadiansToDegrees(ScriptMethodParams ¶ms);
+ void RaiseToPower(ScriptMethodParams ¶ms);
+ void Sin(ScriptMethodParams ¶ms);
+ void Sinh(ScriptMethodParams ¶ms);
+ void Sqrt(ScriptMethodParams ¶ms);
+ void Tan(ScriptMethodParams ¶ms);
+ void Tanh(ScriptMethodParams ¶ms);
+ void GetPi(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/mouse.cpp b/engines/ags/plugins/core/mouse.cpp
index 44fa1078d1..72aab6fd54 100644
--- a/engines/ags/plugins/core/mouse.cpp
+++ b/engines/ags/plugins/core/mouse.cpp
@@ -29,6 +29,7 @@ namespace Plugins {
namespace Core {
void Mouse::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(Mouse::ChangeModeGraphic^2, ChangeCursorGraphic);
SCRIPT_METHOD_EXT(Mouse::ChangeModeHotspot^3, ChangeCursorHotspot);
SCRIPT_METHOD_EXT(Mouse::ChangeModeView^2, Mouse_ChangeModeView);
@@ -49,6 +50,7 @@ void Mouse::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Mouse::set_Mode, set_cursor_mode);
SCRIPT_METHOD_EXT(Mouse::get_Visible, Mouse_GetVisible);
SCRIPT_METHOD_EXT(Mouse::set_Visible, Mouse_SetVisible);
+ */
}
void Mouse::ChangeCursorGraphic(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/mouse.h b/engines/ags/plugins/core/mouse.h
index 0f578c59c7..436f084a5e 100644
--- a/engines/ags/plugins/core/mouse.h
+++ b/engines/ags/plugins/core/mouse.h
@@ -23,36 +23,38 @@
#ifndef AGS_PLUGINS_CORE_MOUSE_H
#define AGS_PLUGINS_CORE_MOUSE_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Mouse : public ScriptContainer {
+ SCRIPT_HASH(Mouse)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~Mouse() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void ChangeCursorGraphic(ScriptMethodParams ¶ms);
- static void ChangeCursorHotspot(ScriptMethodParams ¶ms);
- static void Mouse_ChangeModeView(ScriptMethodParams ¶ms);
- static void disable_cursor_mode(ScriptMethodParams ¶ms);
- static void enable_cursor_mode(ScriptMethodParams ¶ms);
- static void Mouse_GetModeGraphic(ScriptMethodParams ¶ms);
- static void IsButtonDown(ScriptMethodParams ¶ms);
- static void IsModeEnabled(ScriptMethodParams ¶ms);
- static void SaveCursorForLocationChange(ScriptMethodParams ¶ms);
- static void SetNextCursor(ScriptMethodParams ¶ms);
- static void SetPreviousCursor(ScriptMethodParams ¶ms);
- static void SetMouseBounds(ScriptMethodParams ¶ms);
- static void SetMousePosition(ScriptMethodParams ¶ms);
- static void RefreshMouse(ScriptMethodParams ¶ms);
- static void set_default_cursor(ScriptMethodParams ¶ms);
- static void set_mouse_cursor(ScriptMethodParams ¶ms);
- static void GetCursorMode(ScriptMethodParams ¶ms);
- static void set_cursor_mode(ScriptMethodParams ¶ms);
- static void Mouse_GetVisible(ScriptMethodParams ¶ms);
- static void Mouse_SetVisible(ScriptMethodParams ¶ms);
+ void ChangeCursorGraphic(ScriptMethodParams ¶ms);
+ void ChangeCursorHotspot(ScriptMethodParams ¶ms);
+ void Mouse_ChangeModeView(ScriptMethodParams ¶ms);
+ void disable_cursor_mode(ScriptMethodParams ¶ms);
+ void enable_cursor_mode(ScriptMethodParams ¶ms);
+ void Mouse_GetModeGraphic(ScriptMethodParams ¶ms);
+ void IsButtonDown(ScriptMethodParams ¶ms);
+ void IsModeEnabled(ScriptMethodParams ¶ms);
+ void SaveCursorForLocationChange(ScriptMethodParams ¶ms);
+ void SetNextCursor(ScriptMethodParams ¶ms);
+ void SetPreviousCursor(ScriptMethodParams ¶ms);
+ void SetMouseBounds(ScriptMethodParams ¶ms);
+ void SetMousePosition(ScriptMethodParams ¶ms);
+ void RefreshMouse(ScriptMethodParams ¶ms);
+ void set_default_cursor(ScriptMethodParams ¶ms);
+ void set_mouse_cursor(ScriptMethodParams ¶ms);
+ void GetCursorMode(ScriptMethodParams ¶ms);
+ void set_cursor_mode(ScriptMethodParams ¶ms);
+ void Mouse_GetVisible(ScriptMethodParams ¶ms);
+ void Mouse_SetVisible(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/object.cpp b/engines/ags/plugins/core/object.cpp
index 16dd6085fc..95a4ff76b1 100644
--- a/engines/ags/plugins/core/object.cpp
+++ b/engines/ags/plugins/core/object.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void Object::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(Object::Animate^5, Animate);
SCRIPT_METHOD_EXT(Object::IsCollidingWithObject^1, IsCollidingWithObject);
SCRIPT_METHOD_EXT(Object::GetName^1, GetName);
@@ -76,6 +77,7 @@ void Object::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Object::set_X, SetX);
SCRIPT_METHOD_EXT(Object::get_Y, GetY);
SCRIPT_METHOD_EXT(Object::set_Y, SetY);
+ */
}
void Object::Animate(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/object.h b/engines/ags/plugins/core/object.h
index d40d8dd909..c0aa7b97f0 100644
--- a/engines/ags/plugins/core/object.h
+++ b/engines/ags/plugins/core/object.h
@@ -23,64 +23,66 @@
#ifndef AGS_PLUGINS_CORE_OBJECT_H
#define AGS_PLUGINS_CORE_OBJECT_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Object : public ScriptContainer {
+ SCRIPT_HASH(Object)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~Object() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void Animate(ScriptMethodParams ¶ms);
- static void IsCollidingWithObject(ScriptMethodParams ¶ms);
- static void GetName(ScriptMethodParams ¶ms);
- static void GetProperty(ScriptMethodParams ¶ms);
- static void GetPropertyText(ScriptMethodParams ¶ms);
- static void GetTextProperty(ScriptMethodParams ¶ms);
- static void MergeIntoBackground(ScriptMethodParams ¶ms);
- static void Move(ScriptMethodParams ¶ms);
- static void RemoveTint(ScriptMethodParams ¶ms);
- static void RunInteraction(ScriptMethodParams ¶ms);
- static void SetPosition(ScriptMethodParams ¶ms);
- static void SetView(ScriptMethodParams ¶ms);
- static void StopAnimating(ScriptMethodParams ¶ms);
- static void StopMoving(ScriptMethodParams ¶ms);
- static void Tint(ScriptMethodParams ¶ms);
- static void GetObjectAtRoom(ScriptMethodParams ¶ms);
- static void GetObjectAtScreen(ScriptMethodParams ¶ms);
- static void GetAnimating(ScriptMethodParams ¶ms);
- static void GetBaseline(ScriptMethodParams ¶ms);
- static void SetBaseline(ScriptMethodParams ¶ms);
- static void GetBlockingHeight(ScriptMethodParams ¶ms);
- static void SetBlockingHeight(ScriptMethodParams ¶ms);
- static void GetBlockingWidth(ScriptMethodParams ¶ms);
- static void SetBlockingWidth(ScriptMethodParams ¶ms);
- static void GetClickable(ScriptMethodParams ¶ms);
- static void SetClickable(ScriptMethodParams ¶ms);
- static void GetFrame(ScriptMethodParams ¶ms);
- static void GetGraphic(ScriptMethodParams ¶ms);
- static void SetGraphic(ScriptMethodParams ¶ms);
- static void GetID(ScriptMethodParams ¶ms);
- static void GetIgnoreScaling(ScriptMethodParams ¶ms);
- static void SetIgnoreScaling(ScriptMethodParams ¶ms);
- static void GetIgnoreWalkbehinds(ScriptMethodParams ¶ms);
- static void SetIgnoreWalkbehinds(ScriptMethodParams ¶ms);
- static void GetLoop(ScriptMethodParams ¶ms);
- static void GetMoving(ScriptMethodParams ¶ms);
- static void GetName_New(ScriptMethodParams ¶ms);
- static void GetSolid(ScriptMethodParams ¶ms);
- static void SetSolid(ScriptMethodParams ¶ms);
- static void GetTransparency(ScriptMethodParams ¶ms);
- static void SetTransparency(ScriptMethodParams ¶ms);
- static void GetView(ScriptMethodParams ¶ms);
- static void GetVisible(ScriptMethodParams ¶ms);
- static void SetVisible(ScriptMethodParams ¶ms);
- static void GetX(ScriptMethodParams ¶ms);
- static void SetX(ScriptMethodParams ¶ms);
- static void GetY(ScriptMethodParams ¶ms);
- static void SetY(ScriptMethodParams ¶ms);
+ void Animate(ScriptMethodParams ¶ms);
+ void IsCollidingWithObject(ScriptMethodParams ¶ms);
+ void GetName(ScriptMethodParams ¶ms);
+ void GetProperty(ScriptMethodParams ¶ms);
+ void GetPropertyText(ScriptMethodParams ¶ms);
+ void GetTextProperty(ScriptMethodParams ¶ms);
+ void MergeIntoBackground(ScriptMethodParams ¶ms);
+ void Move(ScriptMethodParams ¶ms);
+ void RemoveTint(ScriptMethodParams ¶ms);
+ void RunInteraction(ScriptMethodParams ¶ms);
+ void SetPosition(ScriptMethodParams ¶ms);
+ void SetView(ScriptMethodParams ¶ms);
+ void StopAnimating(ScriptMethodParams ¶ms);
+ void StopMoving(ScriptMethodParams ¶ms);
+ void Tint(ScriptMethodParams ¶ms);
+ void GetObjectAtRoom(ScriptMethodParams ¶ms);
+ void GetObjectAtScreen(ScriptMethodParams ¶ms);
+ void GetAnimating(ScriptMethodParams ¶ms);
+ void GetBaseline(ScriptMethodParams ¶ms);
+ void SetBaseline(ScriptMethodParams ¶ms);
+ void GetBlockingHeight(ScriptMethodParams ¶ms);
+ void SetBlockingHeight(ScriptMethodParams ¶ms);
+ void GetBlockingWidth(ScriptMethodParams ¶ms);
+ void SetBlockingWidth(ScriptMethodParams ¶ms);
+ void GetClickable(ScriptMethodParams ¶ms);
+ void SetClickable(ScriptMethodParams ¶ms);
+ void GetFrame(ScriptMethodParams ¶ms);
+ void GetGraphic(ScriptMethodParams ¶ms);
+ void SetGraphic(ScriptMethodParams ¶ms);
+ void GetID(ScriptMethodParams ¶ms);
+ void GetIgnoreScaling(ScriptMethodParams ¶ms);
+ void SetIgnoreScaling(ScriptMethodParams ¶ms);
+ void GetIgnoreWalkbehinds(ScriptMethodParams ¶ms);
+ void SetIgnoreWalkbehinds(ScriptMethodParams ¶ms);
+ void GetLoop(ScriptMethodParams ¶ms);
+ void GetMoving(ScriptMethodParams ¶ms);
+ void GetName_New(ScriptMethodParams ¶ms);
+ void GetSolid(ScriptMethodParams ¶ms);
+ void SetSolid(ScriptMethodParams ¶ms);
+ void GetTransparency(ScriptMethodParams ¶ms);
+ void SetTransparency(ScriptMethodParams ¶ms);
+ void GetView(ScriptMethodParams ¶ms);
+ void GetVisible(ScriptMethodParams ¶ms);
+ void SetVisible(ScriptMethodParams ¶ms);
+ void GetX(ScriptMethodParams ¶ms);
+ void SetX(ScriptMethodParams ¶ms);
+ void GetY(ScriptMethodParams ¶ms);
+ void SetY(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/overlay.cpp b/engines/ags/plugins/core/overlay.cpp
index 5880a7181e..846672f566 100644
--- a/engines/ags/plugins/core/overlay.cpp
+++ b/engines/ags/plugins/core/overlay.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void Overlay::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(Overlay::CreateGraphical^4, CreateGraphical);
SCRIPT_METHOD_EXT(Overlay::CreateTextual^106, ScPl_CreateTextual);
SCRIPT_METHOD_EXT(Overlay::SetText^104, ScPl_SetText);
@@ -37,6 +38,7 @@ void Overlay::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Overlay::set_X, SetX);
SCRIPT_METHOD_EXT(Overlay::get_Y, GetY);
SCRIPT_METHOD_EXT(Overlay::set_Y, SetY);
+ */
}
void Overlay::CreateGraphical(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/overlay.h b/engines/ags/plugins/core/overlay.h
index 3626c5544f..535d6c13ff 100644
--- a/engines/ags/plugins/core/overlay.h
+++ b/engines/ags/plugins/core/overlay.h
@@ -23,25 +23,27 @@
#ifndef AGS_PLUGINS_CORE_OVERLAY_H
#define AGS_PLUGINS_CORE_OVERLAY_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Overlay : public ScriptContainer {
+ SCRIPT_HASH(Overlay)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~Overlay() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void CreateGraphical(ScriptMethodParams ¶ms);
- static void ScPl_CreateTextual(ScriptMethodParams ¶ms);
- static void ScPl_SetText(ScriptMethodParams ¶ms);
- static void Remove(ScriptMethodParams ¶ms);
- static void GetValid(ScriptMethodParams ¶ms);
- static void GetX(ScriptMethodParams ¶ms);
- static void SetX(ScriptMethodParams ¶ms);
- static void GetY(ScriptMethodParams ¶ms);
- static void SetY(ScriptMethodParams ¶ms);
+ void CreateGraphical(ScriptMethodParams ¶ms);
+ void ScPl_CreateTextual(ScriptMethodParams ¶ms);
+ void ScPl_SetText(ScriptMethodParams ¶ms);
+ void Remove(ScriptMethodParams ¶ms);
+ void GetValid(ScriptMethodParams ¶ms);
+ void GetX(ScriptMethodParams ¶ms);
+ void SetX(ScriptMethodParams ¶ms);
+ void GetY(ScriptMethodParams ¶ms);
+ void SetY(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/parser.cpp b/engines/ags/plugins/core/parser.cpp
index 56887f1172..48212bcea5 100644
--- a/engines/ags/plugins/core/parser.cpp
+++ b/engines/ags/plugins/core/parser.cpp
@@ -28,10 +28,12 @@ namespace Plugins {
namespace Core {
void Parser::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(Parser::FindWordID^1, FindWordID);
SCRIPT_METHOD_EXT(Parser::ParseText^1, ParseText);
SCRIPT_METHOD_EXT(Parser::SaidUnknownWord^0, SaidUnknownWord);
SCRIPT_METHOD_EXT(Parser::Said^1, Said);
+ */
}
void Parser::FindWordID(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/parser.h b/engines/ags/plugins/core/parser.h
index 6f248280d8..09fe5924d0 100644
--- a/engines/ags/plugins/core/parser.h
+++ b/engines/ags/plugins/core/parser.h
@@ -23,20 +23,22 @@
#ifndef AGS_PLUGINS_CORE_PARSER_H
#define AGS_PLUGINS_CORE_PARSER_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Parser : public ScriptContainer {
+ SCRIPT_HASH(Parser)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~Parser() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void FindWordID(ScriptMethodParams ¶ms);
- static void ParseText(ScriptMethodParams ¶ms);
- static void SaidUnknownWord(ScriptMethodParams ¶ms);
- static void Said(ScriptMethodParams ¶ms);
+ void FindWordID(ScriptMethodParams ¶ms);
+ void ParseText(ScriptMethodParams ¶ms);
+ void SaidUnknownWord(ScriptMethodParams ¶ms);
+ void Said(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/region.cpp b/engines/ags/plugins/core/region.cpp
index 3380b5495c..4151b64532 100644
--- a/engines/ags/plugins/core/region.cpp
+++ b/engines/ags/plugins/core/region.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void Region::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(Region::GetAtRoomXY^2, GetRegionAtRoom);
SCRIPT_METHOD_EXT(Region::GetAtScreenXY^2, GetRegionAtScreen);
SCRIPT_METHOD_EXT(Region::Tint^4, TintNoLum);
@@ -42,6 +43,7 @@ void Region::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Region::get_TintGreen, GetTintGreen);
SCRIPT_METHOD_EXT(Region::get_TintRed, GetTintRed);
SCRIPT_METHOD_EXT(Region::get_TintSaturation, GetTintSaturation);
+ */
}
void Region::GetRegionAtRoom(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/region.h b/engines/ags/plugins/core/region.h
index b92fdf6736..d36685dca0 100644
--- a/engines/ags/plugins/core/region.h
+++ b/engines/ags/plugins/core/region.h
@@ -23,30 +23,32 @@
#ifndef AGS_PLUGINS_CORE_REGION_H
#define AGS_PLUGINS_CORE_REGION_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Region : public ScriptContainer {
+ SCRIPT_HASH(Region)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~Region() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void GetRegionAtRoom(ScriptMethodParams ¶ms);
- static void GetRegionAtScreen(ScriptMethodParams ¶ms);
- static void TintNoLum(ScriptMethodParams ¶ms);
- static void RunInteraction(ScriptMethodParams ¶ms);
- static void GetEnabled(ScriptMethodParams ¶ms);
- static void SetEnabled(ScriptMethodParams ¶ms);
- static void GetID(ScriptMethodParams ¶ms);
- static void GetLightLevel(ScriptMethodParams ¶ms);
- static void SetLightLevel(ScriptMethodParams ¶ms);
- static void GetTintEnabled(ScriptMethodParams ¶ms);
- static void GetTintBlue(ScriptMethodParams ¶ms);
- static void GetTintGreen(ScriptMethodParams ¶ms);
- static void GetTintRed(ScriptMethodParams ¶ms);
- static void GetTintSaturation(ScriptMethodParams ¶ms);
+ void GetRegionAtRoom(ScriptMethodParams ¶ms);
+ void GetRegionAtScreen(ScriptMethodParams ¶ms);
+ void TintNoLum(ScriptMethodParams ¶ms);
+ void RunInteraction(ScriptMethodParams ¶ms);
+ void GetEnabled(ScriptMethodParams ¶ms);
+ void SetEnabled(ScriptMethodParams ¶ms);
+ void GetID(ScriptMethodParams ¶ms);
+ void GetLightLevel(ScriptMethodParams ¶ms);
+ void SetLightLevel(ScriptMethodParams ¶ms);
+ void GetTintEnabled(ScriptMethodParams ¶ms);
+ void GetTintBlue(ScriptMethodParams ¶ms);
+ void GetTintGreen(ScriptMethodParams ¶ms);
+ void GetTintRed(ScriptMethodParams ¶ms);
+ void GetTintSaturation(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/room.cpp b/engines/ags/plugins/core/room.cpp
index 50d110e035..bb3c72b33e 100644
--- a/engines/ags/plugins/core/room.cpp
+++ b/engines/ags/plugins/core/room.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void Room::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(Room::GetDrawingSurfaceForBackground^1, GetDrawingSurfaceForBackground);
SCRIPT_METHOD_EXT(Room::GetProperty^1, GetProperty);
SCRIPT_METHOD_EXT(Room::GetTextProperty^1, GetTextProperty);
@@ -41,6 +42,7 @@ void Room::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Room::get_RightEdge, GetRightEdge);
SCRIPT_METHOD_EXT(Room::get_TopEdge, GetTopEdge);
SCRIPT_METHOD_EXT(Room::get_Width, GetWidth);
+ */
}
void Room::GetDrawingSurfaceForBackground(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/room.h b/engines/ags/plugins/core/room.h
index a3d7a32ece..6bdc1288ff 100644
--- a/engines/ags/plugins/core/room.h
+++ b/engines/ags/plugins/core/room.h
@@ -23,29 +23,31 @@
#ifndef AGS_PLUGINS_CORE_ROOM_H
#define AGS_PLUGINS_CORE_ROOM_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Room : public ScriptContainer {
+ SCRIPT_HASH(Room)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~Room() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void GetDrawingSurfaceForBackground(ScriptMethodParams ¶ms);
- static void GetProperty(ScriptMethodParams ¶ms);
- static void GetTextProperty(ScriptMethodParams ¶ms);
- static void GetBottomEdge(ScriptMethodParams ¶ms);
- static void GetColorDepth(ScriptMethodParams ¶ms);
- static void GetHeight(ScriptMethodParams ¶ms);
- static void GetLeftEdge(ScriptMethodParams ¶ms);
- static void GetMessages(ScriptMethodParams ¶ms);
- static void GetMusicOnLoad(ScriptMethodParams ¶ms);
- static void GetObjectCount(ScriptMethodParams ¶ms);
- static void GetRightEdge(ScriptMethodParams ¶ms);
- static void GetTopEdge(ScriptMethodParams ¶ms);
- static void GetWidth(ScriptMethodParams ¶ms);
+ void GetDrawingSurfaceForBackground(ScriptMethodParams ¶ms);
+ void GetProperty(ScriptMethodParams ¶ms);
+ void GetTextProperty(ScriptMethodParams ¶ms);
+ void GetBottomEdge(ScriptMethodParams ¶ms);
+ void GetColorDepth(ScriptMethodParams ¶ms);
+ void GetHeight(ScriptMethodParams ¶ms);
+ void GetLeftEdge(ScriptMethodParams ¶ms);
+ void GetMessages(ScriptMethodParams ¶ms);
+ void GetMusicOnLoad(ScriptMethodParams ¶ms);
+ void GetObjectCount(ScriptMethodParams ¶ms);
+ void GetRightEdge(ScriptMethodParams ¶ms);
+ void GetTopEdge(ScriptMethodParams ¶ms);
+ void GetWidth(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/slider.cpp b/engines/ags/plugins/core/slider.cpp
index 53d2531931..5b319c6f45 100644
--- a/engines/ags/plugins/core/slider.cpp
+++ b/engines/ags/plugins/core/slider.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void Slider::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(Slider::get_BackgroundGraphic, GetBackgroundGraphic);
SCRIPT_METHOD_EXT(Slider::set_BackgroundGraphic, SetBackgroundGraphic);
SCRIPT_METHOD_EXT(Slider::get_HandleGraphic, GetHandleGraphic);
@@ -40,6 +41,7 @@ void Slider::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Slider::set_Min, SetMin);
SCRIPT_METHOD_EXT(Slider::get_Value, GetValue);
SCRIPT_METHOD_EXT(Slider::set_Value, SetValue);
+ */
}
void Slider::GetBackgroundGraphic(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/slider.h b/engines/ags/plugins/core/slider.h
index 2ec35089ce..02c5c52c68 100644
--- a/engines/ags/plugins/core/slider.h
+++ b/engines/ags/plugins/core/slider.h
@@ -23,28 +23,30 @@
#ifndef AGS_PLUGINS_CORE_SLIDER_H
#define AGS_PLUGINS_CORE_SLIDER_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Slider : public ScriptContainer {
+ SCRIPT_HASH(Slider)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~Slider() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void GetBackgroundGraphic(ScriptMethodParams ¶ms);
- static void SetBackgroundGraphic(ScriptMethodParams ¶ms);
- static void GetHandleGraphic(ScriptMethodParams ¶ms);
- static void SetHandleGraphic(ScriptMethodParams ¶ms);
- static void GetHandleOffset(ScriptMethodParams ¶ms);
- static void SetHandleOffset(ScriptMethodParams ¶ms);
- static void GetMax(ScriptMethodParams ¶ms);
- static void SetMax(ScriptMethodParams ¶ms);
- static void GetMin(ScriptMethodParams ¶ms);
- static void SetMin(ScriptMethodParams ¶ms);
- static void GetValue(ScriptMethodParams ¶ms);
- static void SetValue(ScriptMethodParams ¶ms);
+ void GetBackgroundGraphic(ScriptMethodParams ¶ms);
+ void SetBackgroundGraphic(ScriptMethodParams ¶ms);
+ void GetHandleGraphic(ScriptMethodParams ¶ms);
+ void SetHandleGraphic(ScriptMethodParams ¶ms);
+ void GetHandleOffset(ScriptMethodParams ¶ms);
+ void SetHandleOffset(ScriptMethodParams ¶ms);
+ void GetMax(ScriptMethodParams ¶ms);
+ void SetMax(ScriptMethodParams ¶ms);
+ void GetMin(ScriptMethodParams ¶ms);
+ void SetMin(ScriptMethodParams ¶ms);
+ void GetValue(ScriptMethodParams ¶ms);
+ void SetValue(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/string.cpp b/engines/ags/plugins/core/string.cpp
index de7050c7e3..ed9cfe9eeb 100644
--- a/engines/ags/plugins/core/string.cpp
+++ b/engines/ags/plugins/core/string.cpp
@@ -29,6 +29,7 @@ namespace Plugins {
namespace Core {
void String::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(String::IsNullOrEmpty^1, IsNullOrEmpty);
SCRIPT_METHOD_EXT(String::Append^1, Append);
SCRIPT_METHOD_EXT(String::AppendChar^1, AppendChar);
@@ -49,6 +50,7 @@ void String::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(String::get_AsInt, StringToInt);
SCRIPT_METHOD_EXT(String::geti_Chars, GetChars);
SCRIPT_METHOD_EXT(String::get_Length, strlen);
+ */
}
void String::IsNullOrEmpty(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/string.h b/engines/ags/plugins/core/string.h
index 4951a2933a..e64df69479 100644
--- a/engines/ags/plugins/core/string.h
+++ b/engines/ags/plugins/core/string.h
@@ -23,35 +23,37 @@
#ifndef AGS_PLUGINS_CORE_STRING_H
#define AGS_PLUGINS_CORE_STRING_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class String : public ScriptContainer {
+ SCRIPT_HASH(String)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~String() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void IsNullOrEmpty(ScriptMethodParams ¶ms);
- static void Append(ScriptMethodParams ¶ms);
- static void AppendChar(ScriptMethodParams ¶ms);
- static void CompareTo(ScriptMethodParams ¶ms);
- static void StrContains(ScriptMethodParams ¶ms);
- static void Copy(ScriptMethodParams ¶ms);
- static void EndsWith(ScriptMethodParams ¶ms);
- static void ScPl_String_Format(ScriptMethodParams ¶ms);
- static void LowerCase(ScriptMethodParams ¶ms);
- static void Replace(ScriptMethodParams ¶ms);
- static void ReplaceCharAt(ScriptMethodParams ¶ms);
- static void StartsWith(ScriptMethodParams ¶ms);
- static void Substring(ScriptMethodParams ¶ms);
- static void Truncate(ScriptMethodParams ¶ms);
- static void UpperCase(ScriptMethodParams ¶ms);
- static void StringToFloat(ScriptMethodParams ¶ms);
- static void StringToInt(ScriptMethodParams ¶ms);
- static void GetChars(ScriptMethodParams ¶ms);
- static void strlen(ScriptMethodParams ¶ms);
+ void IsNullOrEmpty(ScriptMethodParams ¶ms);
+ void Append(ScriptMethodParams ¶ms);
+ void AppendChar(ScriptMethodParams ¶ms);
+ void CompareTo(ScriptMethodParams ¶ms);
+ void StrContains(ScriptMethodParams ¶ms);
+ void Copy(ScriptMethodParams ¶ms);
+ void EndsWith(ScriptMethodParams ¶ms);
+ void ScPl_String_Format(ScriptMethodParams ¶ms);
+ void LowerCase(ScriptMethodParams ¶ms);
+ void Replace(ScriptMethodParams ¶ms);
+ void ReplaceCharAt(ScriptMethodParams ¶ms);
+ void StartsWith(ScriptMethodParams ¶ms);
+ void Substring(ScriptMethodParams ¶ms);
+ void Truncate(ScriptMethodParams ¶ms);
+ void UpperCase(ScriptMethodParams ¶ms);
+ void StringToFloat(ScriptMethodParams ¶ms);
+ void StringToInt(ScriptMethodParams ¶ms);
+ void GetChars(ScriptMethodParams ¶ms);
+ void strlen(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/system.cpp b/engines/ags/plugins/core/system.cpp
index f32d6c371a..4c7b097a72 100644
--- a/engines/ags/plugins/core/system.cpp
+++ b/engines/ags/plugins/core/system.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void System::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(System::get_AudioChannelCount, GetAudioChannelCount);
SCRIPT_METHOD_EXT(System::geti_AudioChannels, GetAudioChannels);
SCRIPT_METHOD_EXT(System::get_CapsLock, GetCapsLock);
@@ -51,6 +52,7 @@ void System::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(System::get_VSync, GetVsync);
SCRIPT_METHOD_EXT(System::set_VSync, SetVsync);
SCRIPT_METHOD_EXT(System::get_Windowed, GetWindowed);
+ */
}
void System::GetAudioChannelCount(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/system.h b/engines/ags/plugins/core/system.h
index 51b1293116..25b0c98497 100644
--- a/engines/ags/plugins/core/system.h
+++ b/engines/ags/plugins/core/system.h
@@ -23,38 +23,40 @@
#ifndef AGS_PLUGINS_CORE_SYSTEM_H
#define AGS_PLUGINS_CORE_SYSTEM_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class System : public ScriptContainer {
+ SCRIPT_HASH(System)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~System() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void GetAudioChannelCount(ScriptMethodParams ¶ms);
- static void GetAudioChannels(ScriptMethodParams ¶ms);
- static void GetCapsLock(ScriptMethodParams ¶ms);
- static void GetColorDepth(ScriptMethodParams ¶ms);
- static void GetGamma(ScriptMethodParams ¶ms);
- static void SetGamma(ScriptMethodParams ¶ms);
- static void GetHardwareAcceleration(ScriptMethodParams ¶ms);
- static void GetNumLock(ScriptMethodParams ¶ms);
- static void GetOS(ScriptMethodParams ¶ms);
- static void GetRuntimeInfo(ScriptMethodParams ¶ms);
- static void GetScreenHeight(ScriptMethodParams ¶ms);
- static void GetScreenWidth(ScriptMethodParams ¶ms);
- static void GetScrollLock(ScriptMethodParams ¶ms);
- static void GetSupportsGammaControl(ScriptMethodParams ¶ms);
- static void GetVersion(ScriptMethodParams ¶ms);
- static void GetViewportHeight(ScriptMethodParams ¶ms);
- static void GetViewportWidth(ScriptMethodParams ¶ms);
- static void GetVolume(ScriptMethodParams ¶ms);
- static void SetVolume(ScriptMethodParams ¶ms);
- static void GetVsync(ScriptMethodParams ¶ms);
- static void SetVsync(ScriptMethodParams ¶ms);
- static void GetWindowed(ScriptMethodParams ¶ms);
+ void GetAudioChannelCount(ScriptMethodParams ¶ms);
+ void GetAudioChannels(ScriptMethodParams ¶ms);
+ void GetCapsLock(ScriptMethodParams ¶ms);
+ void GetColorDepth(ScriptMethodParams ¶ms);
+ void GetGamma(ScriptMethodParams ¶ms);
+ void SetGamma(ScriptMethodParams ¶ms);
+ void GetHardwareAcceleration(ScriptMethodParams ¶ms);
+ void GetNumLock(ScriptMethodParams ¶ms);
+ void GetOS(ScriptMethodParams ¶ms);
+ void GetRuntimeInfo(ScriptMethodParams ¶ms);
+ void GetScreenHeight(ScriptMethodParams ¶ms);
+ void GetScreenWidth(ScriptMethodParams ¶ms);
+ void GetScrollLock(ScriptMethodParams ¶ms);
+ void GetSupportsGammaControl(ScriptMethodParams ¶ms);
+ void GetVersion(ScriptMethodParams ¶ms);
+ void GetViewportHeight(ScriptMethodParams ¶ms);
+ void GetViewportWidth(ScriptMethodParams ¶ms);
+ void GetVolume(ScriptMethodParams ¶ms);
+ void SetVolume(ScriptMethodParams ¶ms);
+ void GetVsync(ScriptMethodParams ¶ms);
+ void SetVsync(ScriptMethodParams ¶ms);
+ void GetWindowed(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/textbox.cpp b/engines/ags/plugins/core/textbox.cpp
index 7b96d737fe..07a217c23b 100644
--- a/engines/ags/plugins/core/textbox.cpp
+++ b/engines/ags/plugins/core/textbox.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void Textbox::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(TextBox::GetText^1, GetText);
SCRIPT_METHOD_EXT(TextBox::SetText^1, SetText);
SCRIPT_METHOD_EXT(TextBox::get_Font, GetFont);
@@ -36,6 +37,7 @@ void Textbox::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(TextBox::set_Text, SetText);
SCRIPT_METHOD_EXT(TextBox::get_TextColor, GetTextColor);
SCRIPT_METHOD_EXT(TextBox::set_TextColor, SetTextColor);
+ */
}
void Textbox::GetText(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/textbox.h b/engines/ags/plugins/core/textbox.h
index d14d20a470..eff98e0fe8 100644
--- a/engines/ags/plugins/core/textbox.h
+++ b/engines/ags/plugins/core/textbox.h
@@ -23,23 +23,25 @@
#ifndef AGS_PLUGINS_CORE_TEXTBOX_H
#define AGS_PLUGINS_CORE_TEXTBOX_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class Textbox : public ScriptContainer {
+ SCRIPT_HASH(Textbox)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~Textbox() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void GetText(ScriptMethodParams ¶ms);
- static void SetText(ScriptMethodParams ¶ms);
- static void GetText_New(ScriptMethodParams ¶ms);
- static void GetFont(ScriptMethodParams ¶ms);
- static void SetFont(ScriptMethodParams ¶ms);
- static void GetTextColor(ScriptMethodParams ¶ms);
- static void SetTextColor(ScriptMethodParams ¶ms);
+ void GetText(ScriptMethodParams ¶ms);
+ void SetText(ScriptMethodParams ¶ms);
+ void GetText_New(ScriptMethodParams ¶ms);
+ void GetFont(ScriptMethodParams ¶ms);
+ void SetFont(ScriptMethodParams ¶ms);
+ void GetTextColor(ScriptMethodParams ¶ms);
+ void SetTextColor(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/core/view_frame.cpp b/engines/ags/plugins/core/view_frame.cpp
index 8aadd3c538..5e6b2ea162 100644
--- a/engines/ags/plugins/core/view_frame.cpp
+++ b/engines/ags/plugins/core/view_frame.cpp
@@ -28,6 +28,7 @@ namespace Plugins {
namespace Core {
void ViewFrame::AGS_EngineStartup(IAGSEngine *engine) {
+ /*
SCRIPT_METHOD_EXT(ViewFrame::get_Flipped, GetFlipped);
SCRIPT_METHOD_EXT(ViewFrame::get_Frame, GetFrame);
SCRIPT_METHOD_EXT(ViewFrame::get_Graphic, GetGraphic);
@@ -39,6 +40,7 @@ void ViewFrame::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(ViewFrame::set_Sound, SetSound);
SCRIPT_METHOD_EXT(ViewFrame::get_Speed, GetSpeed);
SCRIPT_METHOD_EXT(ViewFrame::get_View, GetView);
+ */
}
void ViewFrame::GetFlipped(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/view_frame.h b/engines/ags/plugins/core/view_frame.h
index ea315d0dcf..2cfffef528 100644
--- a/engines/ags/plugins/core/view_frame.h
+++ b/engines/ags/plugins/core/view_frame.h
@@ -23,27 +23,29 @@
#ifndef AGS_PLUGINS_CORE_VIEW_FRAME_H
#define AGS_PLUGINS_CORE_VIEW_FRAME_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
class ViewFrame : public ScriptContainer {
+ SCRIPT_HASH(ViewFrame)
public:
- void AGS_EngineStartup(IAGSEngine *engine);
+ virtual ~ViewFrame() {}
+ void AGS_EngineStartup(IAGSEngine *engine) override;
- static void GetFlipped(ScriptMethodParams ¶ms);
- static void GetFrame(ScriptMethodParams ¶ms);
- static void GetGraphic(ScriptMethodParams ¶ms);
- static void SetGraphic(ScriptMethodParams ¶ms);
- static void GetLinkedAudio(ScriptMethodParams ¶ms);
- static void SetLinkedAudio(ScriptMethodParams ¶ms);
- static void GetLoop(ScriptMethodParams ¶ms);
- static void GetSound(ScriptMethodParams ¶ms);
- static void SetSound(ScriptMethodParams ¶ms);
- static void GetSpeed(ScriptMethodParams ¶ms);
- static void GetView(ScriptMethodParams ¶ms);
+ void GetFlipped(ScriptMethodParams ¶ms);
+ void GetFrame(ScriptMethodParams ¶ms);
+ void GetGraphic(ScriptMethodParams ¶ms);
+ void SetGraphic(ScriptMethodParams ¶ms);
+ void GetLinkedAudio(ScriptMethodParams ¶ms);
+ void SetLinkedAudio(ScriptMethodParams ¶ms);
+ void GetLoop(ScriptMethodParams ¶ms);
+ void GetSound(ScriptMethodParams ¶ms);
+ void SetSound(ScriptMethodParams ¶ms);
+ void GetSpeed(ScriptMethodParams ¶ms);
+ void GetView(ScriptMethodParams ¶ms);
};
} // namespace Core
diff --git a/engines/ags/plugins/plugin_base.cpp b/engines/ags/plugins/plugin_base.cpp
index 9367e08086..c86f337fe5 100644
--- a/engines/ags/plugins/plugin_base.cpp
+++ b/engines/ags/plugins/plugin_base.cpp
@@ -22,6 +22,7 @@
#include "ags/lib/allegro.h"
#include "ags/plugins/plugin_base.h"
+/*
#include "ags/plugins/ags_agi/ags_agi.h"
#include "ags/plugins/ags_blend/ags_blend.h"
#include "ags/plugins/ags_clipboard/ags_clipboard.h"
@@ -43,6 +44,7 @@
#include "ags/plugins/ags_tcp_ip/ags_tcp_ip.h"
#include "ags/plugins/ags_wadjet_util/ags_wadjet_util.h"
#include "ags/plugins/ags_waves/ags_waves.h"
+*/
#include "ags/ags.h"
#include "ags/detection.h"
#include "common/str.h"
@@ -50,7 +52,7 @@
namespace AGS3 {
namespace Plugins {
-void *pluginOpen(const char *filename) {
+Plugins::PluginBase *pluginOpen(const char *filename) {
Common::String fname(filename);
// Check for if the game specifies a specific plugin version for this game
@@ -62,7 +64,7 @@ void *pluginOpen(const char *filename) {
break;
}
}
-
+/*
if (fname.equalsIgnoreCase("ags_tcp_ip"))
return new AGSTcpIp::AGSTcpIp();
@@ -130,22 +132,17 @@ void *pluginOpen(const char *filename) {
if (fname.equalsIgnoreCase("agswaves"))
return new AGSWaves::AGSWaves();
-
+*/
debug("Plugin '%s' is not yet supported", fname.c_str());
return nullptr;
}
-int pluginClose(void *lib) {
+int pluginClose(Plugins::PluginBase *lib) {
PluginBase *plugin = static_cast<PluginBase *>(lib);
delete plugin;
return 0;
}
-void *pluginSym(void *lib, const char *method) {
- PluginBase *plugin = static_cast<PluginBase *>(lib);
- return (*plugin)[method];
-}
-
const char *pluginError() {
return nullptr;
}
@@ -156,56 +153,5 @@ Common::String ScriptMethodParams::format(int formatIndex) {
error("TODO: Implement ScriptMethodParams::format");
}
-/*------------------------------------------------------------------*/
-
-PluginBase::PluginBase() {
- DLL_METHOD(AGS_PluginV2);
- DLL_METHOD(AGS_EditorStartup);
- DLL_METHOD(AGS_EditorShutdown);
- DLL_METHOD(AGS_EditorProperties);
- DLL_METHOD(AGS_EditorSaveGame);
- DLL_METHOD(AGS_EditorLoadGame);
- DLL_METHOD(AGS_EngineStartup);
- DLL_METHOD(AGS_EngineShutdown);
- DLL_METHOD(AGS_EngineOnEvent);
- DLL_METHOD(AGS_EngineDebugHook);
- DLL_METHOD(AGS_EngineInitGfx);
-}
-
-int PluginBase::AGS_EditorStartup(IAGSEditor *) {
- return 0;
-}
-
-void PluginBase::AGS_EditorShutdown() {
-}
-
-void PluginBase::AGS_EditorProperties(HWND) {
-}
-
-int PluginBase::AGS_EditorSaveGame(char *, int) {
- return 0;
-}
-
-void PluginBase::AGS_EditorLoadGame(char *, int) {
-}
-
-void PluginBase::AGS_EngineStartup(IAGSEngine *) {
-}
-
-void PluginBase::AGS_EngineShutdown() {
-}
-
-int64 PluginBase::AGS_EngineOnEvent(int, NumberPtr) {
- return 0;
-}
-
-int PluginBase::AGS_EngineDebugHook(const char *, int, int) {
- return 0;
-}
-
-void PluginBase::AGS_EngineInitGfx(const char *driverID, void *data) {
- assert(!strcmp(driverID, "Software"));
-}
-
} // namespace Plugins
} // namespace AGS3
diff --git a/engines/ags/plugins/plugin_base.h b/engines/ags/plugins/plugin_base.h
index 58687aef04..7cd551cf6e 100644
--- a/engines/ags/plugins/plugin_base.h
+++ b/engines/ags/plugins/plugin_base.h
@@ -24,16 +24,34 @@
#define AGS_PLUGINS_PLUGIN_BASE_H
#include "ags/shared/util/string.h"
-#include "ags/plugins/ags_plugin.h"
#include "common/hashmap.h"
#include "common/hash-str.h"
+#include "common/textconsole.h"
namespace AGS3 {
+
+class IAGSEditor;
+class IAGSEngine;
+
namespace Plugins {
-#define DLL_METHOD(NAME) _methods[#NAME] = (void *)&NAME
-#define SCRIPT_METHOD(NAME) registerFunction(engine, #NAME, &NAME)
-#define SCRIPT_METHOD_EXT(NAME, PROC) registerFunction(engine, #NAME, &(PROC))
+#define SCRIPT_METHOD(NAME) addMethod(#NAME, &NAME)
+#define SCRIPT_METHOD_EXT(NAME, PROC) addMethod(#NAME, &(PROC))
+
+#define SCRIPT_HASH(TheClass) \
+ private: \
+ typedef void (TheClass::*MethodPtr)(ScriptMethodParams ¶ms); \
+ Common::HashMap<Common::String, MethodPtr> _methods; \
+ inline void addMethod(const Common::String &name, MethodPtr fn) { \
+ _methods[name] = fn; \
+ _engine->RegisterScriptFunction(name.c_str(), this); \
+ } \
+ public: \
+ void execMethod(const Common::String &name, ScriptMethodParams & params) override { \
+ if (!_methods.contains(name)) \
+ error("Plugin does not contain method - %s", name.c_str()); \
+ (this->*_methods[name])(params); \
+ }
inline float PARAM_TO_FLOAT(int32 xi) {
float x;
@@ -103,12 +121,11 @@ inline int32 PARAM_FROM_FLOAT(float x) {
T9 N9 = (T9)params[8]
class ScriptMethodParams;
+class ScriptContainer;
using string = const char *;
typedef uint32 HWND;
-typedef void (*PluginMethod)(ScriptMethodParams ¶ms);
-
class ScriptMethodParams : public Common::Array<intptr_t> {
public:
NumberPtr _result;
@@ -125,45 +142,39 @@ public:
*/
class ScriptContainer {
protected:
- static inline void registerFunction(IAGSEngine *engine, const char *name, PluginMethod fn) {
- engine->RegisterScriptFunction(name, (void *)fn);
+ IAGSEngine *_engine = nullptr;
+public:
+ virtual void AGS_EngineStartup(IAGSEngine *engine) {
+ _engine = engine;
}
-};
+ virtual void execMethod(const Common::String &name, ScriptMethodParams ¶ms) = 0;
+};
/**
* Base class for the implementation of AGS plugins
*/
class PluginBase: public ScriptContainer {
-protected:
- Common::HashMap<Common::String, void *, Common::IgnoreCase_Hash, Common::IgnoreCase_EqualTo> _methods;
-
- static int AGS_PluginV2() {
- return 1;
- }
- static int AGS_EditorStartup(IAGSEditor *);
- static void AGS_EditorShutdown();
- static void AGS_EditorProperties(HWND);
- static int AGS_EditorSaveGame(char *, int);
- static void AGS_EditorLoadGame(char *, int);
- static void AGS_EngineStartup(IAGSEngine *);
- static void AGS_EngineShutdown();
- static int64 AGS_EngineOnEvent(int, NumberPtr);
- static int AGS_EngineDebugHook(const char *, int, int);
- static void AGS_EngineInitGfx(const char *driverID, void *data);
public:
- PluginBase();
-
- void *operator[](const Common::String &methodName) const {
- return _methods[methodName];
- }
+ PluginBase() {}
+ virtual ~PluginBase() {}
+
+ virtual const char *AGS_GetPluginName() = 0;
+ virtual int AGS_PluginV2() const { return 1; }
+ virtual int AGS_EditorStartup(IAGSEditor *) { return 0; }
+ virtual void AGS_EditorShutdown() {}
+ virtual void AGS_EditorProperties(HWND) {}
+ virtual int AGS_EditorSaveGame(char *, int) { return 0; }
+ virtual void AGS_EditorLoadGame(char *, int) {}
+ virtual void AGS_EngineShutdown() {}
+ virtual int64 AGS_EngineOnEvent(int, NumberPtr) { return 0; }
+ virtual int AGS_EngineDebugHook(const char *, int, int) { return 0; }
+ virtual void AGS_EngineInitGfx(const char *driverID, void *data) {}
};
-extern void *pluginOpen(const char *filename);
-
-extern int pluginClose(void *lib);
+extern PluginBase *pluginOpen(const char *filename);
-extern void *pluginSym(void *lib, const char *method);
+extern int pluginClose(Plugins::PluginBase *lib);
extern const char *pluginError();
Commit: aa6df18ce166af4aa84086a85b91603be571909a
https://github.com/scummvm/scummvm/commit/aa6df18ce166af4aa84086a85b91603be571909a
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2021-07-18T17:07:01-07:00
Commit Message:
AGS: Enabling registration of exposed plugin exports
Changed paths:
A engines/ags/plugins/core/maths.cpp
A engines/ags/plugins/core/maths.h
R engines/ags/plugins/core/math.cpp
R engines/ags/plugins/core/math.h
engines/ags/module.mk
engines/ags/plugins/core/audio_channel.cpp
engines/ags/plugins/core/audio_clip.cpp
engines/ags/plugins/core/button.cpp
engines/ags/plugins/core/character.cpp
engines/ags/plugins/core/core.h
engines/ags/plugins/core/date_time.cpp
engines/ags/plugins/core/dialog.cpp
engines/ags/plugins/core/dialog_options_rendering_info.cpp
engines/ags/plugins/core/drawing_surface.cpp
engines/ags/plugins/core/dynamic_sprite.cpp
engines/ags/plugins/core/file.cpp
engines/ags/plugins/core/game.cpp
engines/ags/plugins/core/global_api.cpp
engines/ags/plugins/core/gui.cpp
engines/ags/plugins/core/gui_control.cpp
engines/ags/plugins/core/hotspot.cpp
engines/ags/plugins/core/inv_window.cpp
engines/ags/plugins/core/inventory_item.cpp
engines/ags/plugins/core/label.cpp
engines/ags/plugins/core/listbox.cpp
engines/ags/plugins/core/listbox.h
engines/ags/plugins/core/mouse.cpp
engines/ags/plugins/core/object.cpp
engines/ags/plugins/core/overlay.cpp
engines/ags/plugins/core/parser.cpp
engines/ags/plugins/core/region.cpp
engines/ags/plugins/core/room.cpp
engines/ags/plugins/core/slider.cpp
engines/ags/plugins/core/string.cpp
engines/ags/plugins/core/system.cpp
engines/ags/plugins/core/textbox.cpp
engines/ags/plugins/core/view_frame.cpp
engines/ags/plugins/plugin_base.h
diff --git a/engines/ags/module.mk b/engines/ags/module.mk
index ff05807b12..c3fe037479 100644
--- a/engines/ags/module.mk
+++ b/engines/ags/module.mk
@@ -306,7 +306,7 @@ MODULE_OBJS = \
plugins/core/inv_window.o \
plugins/core/label.o \
plugins/core/listbox.o \
- plugins/core/math.o \
+ plugins/core/maths.o \
plugins/core/mouse.o \
plugins/core/object.o \
plugins/core/overlay.o \
diff --git a/engines/ags/plugins/core/audio_channel.cpp b/engines/ags/plugins/core/audio_channel.cpp
index 60e96c32ef..3037535730 100644
--- a/engines/ags/plugins/core/audio_channel.cpp
+++ b/engines/ags/plugins/core/audio_channel.cpp
@@ -28,21 +28,19 @@ namespace Plugins {
namespace Core {
void AudioChannel::AGS_EngineStartup(IAGSEngine *engine) {
-/*
- SCRIPT_METHOD_EXT(AudioChannel::Seek^1, Seek);
- SCRIPT_METHOD_EXT(AudioChannel::SetRoomLocation^2, SetRoomLocation);
- SCRIPT_METHOD_EXT(AudioChannel::Stop^0, Stop);
- SCRIPT_METHOD_EXT(AudioChannel::get_ID, GetID);
- SCRIPT_METHOD_EXT(AudioChannel::get_IsPlaying, GetIsPlaying);
- SCRIPT_METHOD_EXT(AudioChannel::get_LengthMs, GetLengthMs);
- SCRIPT_METHOD_EXT(AudioChannel::get_Panning, GetPanning);
- SCRIPT_METHOD_EXT(AudioChannel::set_Panning, SetPanning);
- SCRIPT_METHOD_EXT(AudioChannel::get_PlayingClip, GetPlayingClip);
- SCRIPT_METHOD_EXT(AudioChannel::get_Position, GetPosition);
- SCRIPT_METHOD_EXT(AudioChannel::get_PositionMs, GetPositionMs);
- SCRIPT_METHOD_EXT(AudioChannel::get_Volume, GetVolume);
- SCRIPT_METHOD_EXT(AudioChannel::set_Volume, SetVolume);
- */
+ SCRIPT_METHOD(AudioChannel::Seek^1, AudioChannel::Seek);
+ SCRIPT_METHOD(AudioChannel::SetRoomLocation^2, AudioChannel::SetRoomLocation);
+ SCRIPT_METHOD(AudioChannel::Stop^0, AudioChannel::Stop);
+ SCRIPT_METHOD(AudioChannel::get_ID, AudioChannel::GetID);
+ SCRIPT_METHOD(AudioChannel::get_IsPlaying, AudioChannel::GetIsPlaying);
+ SCRIPT_METHOD(AudioChannel::get_LengthMs, AudioChannel::GetLengthMs);
+ SCRIPT_METHOD(AudioChannel::get_Panning, AudioChannel::GetPanning);
+ SCRIPT_METHOD(AudioChannel::set_Panning, AudioChannel::SetPanning);
+ SCRIPT_METHOD(AudioChannel::get_PlayingClip, AudioChannel::GetPlayingClip);
+ SCRIPT_METHOD(AudioChannel::get_Position, AudioChannel::GetPosition);
+ SCRIPT_METHOD(AudioChannel::get_PositionMs, AudioChannel::GetPositionMs);
+ SCRIPT_METHOD(AudioChannel::get_Volume, AudioChannel::GetVolume);
+ SCRIPT_METHOD(AudioChannel::set_Volume, AudioChannel::SetVolume);
}
void AudioChannel::Seek(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/audio_clip.cpp b/engines/ags/plugins/core/audio_clip.cpp
index 7da0ac4ab6..045ffebe5d 100644
--- a/engines/ags/plugins/core/audio_clip.cpp
+++ b/engines/ags/plugins/core/audio_clip.cpp
@@ -28,15 +28,13 @@ namespace Plugins {
namespace Core {
void AudioClip::AGS_EngineStartup(IAGSEngine *engine) {
-/*
- SCRIPT_METHOD_EXT(AudioClip::Play^2, Play);
- SCRIPT_METHOD_EXT(AudioClip::PlayFrom^3, PlayFrom);
- SCRIPT_METHOD_EXT(AudioClip::PlayQueued^2, PlayQueued);
- SCRIPT_METHOD_EXT(AudioClip::Stop^0, Stop);
- SCRIPT_METHOD_EXT(AudioClip::get_FileType, GetFileType);
- SCRIPT_METHOD_EXT(AudioClip::get_IsAvailable, GetIsAvailable);
- SCRIPT_METHOD_EXT(AudioClip::get_Type, GetType);
- */
+ SCRIPT_METHOD(AudioClip::Play^2, AudioClip::Play);
+ SCRIPT_METHOD(AudioClip::PlayFrom^3, AudioClip::PlayFrom);
+ SCRIPT_METHOD(AudioClip::PlayQueued^2, AudioClip::PlayQueued);
+ SCRIPT_METHOD(AudioClip::Stop^0, AudioClip::Stop);
+ SCRIPT_METHOD(AudioClip::get_FileType, AudioClip::GetFileType);
+ SCRIPT_METHOD(AudioClip::get_IsAvailable, AudioClip::GetIsAvailable);
+ SCRIPT_METHOD(AudioClip::get_Type, AudioClip::GetType);
}
void AudioClip::Play(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/button.cpp b/engines/ags/plugins/core/button.cpp
index a0c5727c54..74230fc7c0 100644
--- a/engines/ags/plugins/core/button.cpp
+++ b/engines/ags/plugins/core/button.cpp
@@ -28,26 +28,24 @@ namespace Plugins {
namespace Core {
void Button::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(Button::Animate^4, Animate);
- SCRIPT_METHOD_EXT(Button::GetText^1, GetText);
- SCRIPT_METHOD_EXT(Button::SetText^1, SetText);
- SCRIPT_METHOD_EXT(Button::get_ClipImage, GetClipImage);
- SCRIPT_METHOD_EXT(Button::set_ClipImage, SetClipImage);
- SCRIPT_METHOD_EXT(Button::get_Font, GetFont);
- SCRIPT_METHOD_EXT(Button::set_Font, SetFont);
- SCRIPT_METHOD_EXT(Button::get_Graphic, GetGraphic);
- SCRIPT_METHOD_EXT(Button::get_MouseOverGraphic, GetMouseOverGraphic);
- SCRIPT_METHOD_EXT(Button::set_MouseOverGraphic, SetMouseOverGraphic);
- SCRIPT_METHOD_EXT(Button::get_NormalGraphic, GetNormalGraphic);
- SCRIPT_METHOD_EXT(Button::set_NormalGraphic, SetNormalGraphic);
- SCRIPT_METHOD_EXT(Button::get_PushedGraphic, GetPushedGraphic);
- SCRIPT_METHOD_EXT(Button::set_PushedGraphic, SetPushedGraphic);
- SCRIPT_METHOD_EXT(Button::get_Text, GetText_New);
- SCRIPT_METHOD_EXT(Button::set_Text, SetText);
- SCRIPT_METHOD_EXT(Button::get_TextColor, GetTextColor);
- SCRIPT_METHOD_EXT(Button::set_TextColor, SetTextColor);
- */
+ SCRIPT_METHOD(Button::Animate^4, Button::Animate);
+ SCRIPT_METHOD(Button::GetText^1, Button::GetText);
+ SCRIPT_METHOD(Button::SetText^1, Button::SetText);
+ SCRIPT_METHOD(Button::get_ClipImage, Button::GetClipImage);
+ SCRIPT_METHOD(Button::set_ClipImage, Button::SetClipImage);
+ SCRIPT_METHOD(Button::get_Font, Button::GetFont);
+ SCRIPT_METHOD(Button::set_Font, Button::SetFont);
+ SCRIPT_METHOD(Button::get_Graphic, Button::GetGraphic);
+ SCRIPT_METHOD(Button::get_MouseOverGraphic, Button::GetMouseOverGraphic);
+ SCRIPT_METHOD(Button::set_MouseOverGraphic, Button::SetMouseOverGraphic);
+ SCRIPT_METHOD(Button::get_NormalGraphic, Button::GetNormalGraphic);
+ SCRIPT_METHOD(Button::set_NormalGraphic, Button::SetNormalGraphic);
+ SCRIPT_METHOD(Button::get_PushedGraphic, Button::GetPushedGraphic);
+ SCRIPT_METHOD(Button::set_PushedGraphic, Button::SetPushedGraphic);
+ SCRIPT_METHOD(Button::get_Text, Button::GetText_New);
+ SCRIPT_METHOD(Button::set_Text, Button::SetText);
+ SCRIPT_METHOD(Button::get_TextColor, Button::GetTextColor);
+ SCRIPT_METHOD(Button::set_TextColor, Button::SetTextColor);
}
void Button::Animate(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/character.cpp b/engines/ags/plugins/core/character.cpp
index 90b673e512..c6bb5fae27 100644
--- a/engines/ags/plugins/core/character.cpp
+++ b/engines/ags/plugins/core/character.cpp
@@ -30,147 +30,145 @@ namespace Plugins {
namespace Core {
void Character::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(Character::AddInventory^2, AddInventory);
- SCRIPT_METHOD_EXT(Character::AddWaypoint^2, AddWaypoint);
- SCRIPT_METHOD_EXT(Character::Animate^5, Animate);
- SCRIPT_METHOD_EXT(Character::ChangeRoom^3, ChangeRoom);
- SCRIPT_METHOD_EXT(Character::ChangeRoomAutoPosition^2, ChangeRoomAutoPosition);
- SCRIPT_METHOD_EXT(Character::ChangeView^1, ChangeView);
- SCRIPT_METHOD_EXT(Character::FaceCharacter^2, FaceCharacter);
- SCRIPT_METHOD_EXT(Character::FaceDirection^2, FaceDirection);
- SCRIPT_METHOD_EXT(Character::FaceLocation^3, FaceLocation);
- SCRIPT_METHOD_EXT(Character::FaceObject^2, FaceObject);
- SCRIPT_METHOD_EXT(Character::FollowCharacter^3, FollowCharacter);
- SCRIPT_METHOD_EXT(Character::GetProperty^1, GetProperty);
- SCRIPT_METHOD_EXT(Character::GetPropertyText^2, GetPropertyText);
- SCRIPT_METHOD_EXT(Character::GetTextProperty^1, GetTextProperty);
- SCRIPT_METHOD_EXT(Character::HasInventory^1, HasInventory);
- SCRIPT_METHOD_EXT(Character::IsCollidingWithChar^1, IsCollidingWithChar);
- SCRIPT_METHOD_EXT(Character::IsCollidingWithObject^1, IsCollidingWithObject);
- SCRIPT_METHOD_EXT(Character::LockView^1, LockView);
- SCRIPT_METHOD_EXT(Character::LockView^2, LockViewEx);
+ SCRIPT_METHOD(Character::AddInventory^2, Character::AddInventory);
+ SCRIPT_METHOD(Character::AddWaypoint^2, Character::AddWaypoint);
+ SCRIPT_METHOD(Character::Animate^5, Character::Animate);
+ SCRIPT_METHOD(Character::ChangeRoom^3, Character::ChangeRoom);
+ SCRIPT_METHOD(Character::ChangeRoomAutoPosition^2, Character::ChangeRoomAutoPosition);
+ SCRIPT_METHOD(Character::ChangeView^1, Character::ChangeView);
+ SCRIPT_METHOD(Character::FaceCharacter^2, Character::FaceCharacter);
+ SCRIPT_METHOD(Character::FaceDirection^2, Character::FaceDirection);
+ SCRIPT_METHOD(Character::FaceLocation^3, Character::FaceLocation);
+ SCRIPT_METHOD(Character::FaceObject^2, Character::FaceObject);
+ SCRIPT_METHOD(Character::FollowCharacter^3, Character::FollowCharacter);
+ SCRIPT_METHOD(Character::GetProperty^1, Character::GetProperty);
+ SCRIPT_METHOD(Character::GetPropertyText^2, Character::GetPropertyText);
+ SCRIPT_METHOD(Character::GetTextProperty^1, Character::GetTextProperty);
+ SCRIPT_METHOD(Character::HasInventory^1, Character::HasInventory);
+ SCRIPT_METHOD(Character::IsCollidingWithChar^1, Character::IsCollidingWithChar);
+ SCRIPT_METHOD(Character::IsCollidingWithObject^1, Character::IsCollidingWithObject);
+ SCRIPT_METHOD(Character::LockView^1, Character::LockView);
+ SCRIPT_METHOD(Character::LockView^2, Character::LockViewEx);
if (engine->version < kScriptAPI_v341) {
- SCRIPT_METHOD_EXT(Character::LockViewAligned^3, LockViewAligned_Old);
- SCRIPT_METHOD_EXT(Character::LockViewAligned^4, LockViewAlignedEx_Old);
+ SCRIPT_METHOD(Character::LockViewAligned^3, Character::LockViewAligned_Old);
+ SCRIPT_METHOD(Character::LockViewAligned^4, Character::LockViewAlignedEx_Old);
} else {
- SCRIPT_METHOD_EXT(Character::LockViewAligned^3, LockViewAligned);
- SCRIPT_METHOD_EXT(Character::LockViewAligned^4, LockViewAlignedEx);
+ SCRIPT_METHOD(Character::LockViewAligned^3, Character::LockViewAligned);
+ SCRIPT_METHOD(Character::LockViewAligned^4, Character::LockViewAlignedEx);
}
- SCRIPT_METHOD_EXT(Character::LockViewFrame^3, LockViewFrame);
- SCRIPT_METHOD_EXT(Character::LockViewFrame^4, LockViewFrameEx);
- SCRIPT_METHOD_EXT(Character::LockViewOffset^3, LockViewOffset);
- SCRIPT_METHOD_EXT(Character::LockViewOffset^4, LockViewOffset);
- SCRIPT_METHOD_EXT(Character::LoseInventory^1, LoseInventory);
- SCRIPT_METHOD_EXT(Character::Move^4, Move);
- SCRIPT_METHOD_EXT(Character::PlaceOnWalkableArea^0, PlaceOnWalkableArea);
- SCRIPT_METHOD_EXT(Character::RemoveTint^0, RemoveTint);
- SCRIPT_METHOD_EXT(Character::RunInteraction^1, RunInteraction);
- SCRIPT_METHOD_EXT(Character::Say^101, ScPl_Say);
- SCRIPT_METHOD_EXT(Character::SayAt^4, SayAt);
- SCRIPT_METHOD_EXT(Character::SayBackground^1, SayBackground);
- SCRIPT_METHOD_EXT(Character::SetAsPlayer^0, SetAsPlayer);
- SCRIPT_METHOD_EXT(Character::SetIdleView^2, SetIdleView);
- //SCRIPT_METHOD_EXT(Character::SetOption^2", (void*)SetOption);
- SCRIPT_METHOD_EXT(Character::SetWalkSpeed^2, SetSpeed);
- SCRIPT_METHOD_EXT(Character::StopMoving^0, StopMoving);
- SCRIPT_METHOD_EXT(Character::Think^101, ScPl_Think);
- SCRIPT_METHOD_EXT(Character::Tint^5, Tint);
- SCRIPT_METHOD_EXT(Character::UnlockView^0, UnlockView);
- SCRIPT_METHOD_EXT(Character::UnlockView^1, UnlockViewEx);
- SCRIPT_METHOD_EXT(Character::Walk^4, Walk);
- SCRIPT_METHOD_EXT(Character::WalkStraight^3, WalkStraight);
- SCRIPT_METHOD_EXT(Character::GetAtRoomXY^2, GetCharacterAtRoom);
- SCRIPT_METHOD_EXT(Character::GetAtScreenXY^2, GetCharacterAtScreen);
- SCRIPT_METHOD_EXT(Character::get_ActiveInventory, GetActiveInventory);
- SCRIPT_METHOD_EXT(Character::set_ActiveInventory, SetActiveInventory);
- SCRIPT_METHOD_EXT(Character::get_Animating, GetAnimating);
- SCRIPT_METHOD_EXT(Character::get_AnimationSpeed, GetAnimationSpeed);
- SCRIPT_METHOD_EXT(Character::set_AnimationSpeed, SetAnimationSpeed);
- SCRIPT_METHOD_EXT(Character::get_Baseline, GetBaseline);
- SCRIPT_METHOD_EXT(Character::set_Baseline, SetBaseline);
- SCRIPT_METHOD_EXT(Character::get_BlinkInterval, GetBlinkInterval);
- SCRIPT_METHOD_EXT(Character::set_BlinkInterval, SetBlinkInterval);
- SCRIPT_METHOD_EXT(Character::get_BlinkView, GetBlinkView);
- SCRIPT_METHOD_EXT(Character::set_BlinkView, SetBlinkView);
- SCRIPT_METHOD_EXT(Character::get_BlinkWhileThinking, GetBlinkWhileThinking);
- SCRIPT_METHOD_EXT(Character::set_BlinkWhileThinking, SetBlinkWhileThinking);
- SCRIPT_METHOD_EXT(Character::get_BlockingHeight, GetBlockingHeight);
- SCRIPT_METHOD_EXT(Character::set_BlockingHeight, SetBlockingHeight);
- SCRIPT_METHOD_EXT(Character::get_BlockingWidth, GetBlockingWidth);
- SCRIPT_METHOD_EXT(Character::set_BlockingWidth, SetBlockingWidth);
- SCRIPT_METHOD_EXT(Character::get_Clickable, GetClickable);
- SCRIPT_METHOD_EXT(Character::set_Clickable, SetClickable);
- SCRIPT_METHOD_EXT(Character::get_DestinationX, GetDestinationX);
- SCRIPT_METHOD_EXT(Character::get_DestinationY, GetDestinationY);
- SCRIPT_METHOD_EXT(Character::get_DiagonalLoops, GetDiagonalWalking);
- SCRIPT_METHOD_EXT(Character::set_DiagonalLoops, SetDiagonalWalking);
- SCRIPT_METHOD_EXT(Character::get_Frame, GetFrame);
- SCRIPT_METHOD_EXT(Character::set_Frame, SetFrame);
+ SCRIPT_METHOD(Character::LockViewFrame^3, Character::LockViewFrame);
+ SCRIPT_METHOD(Character::LockViewFrame^4, Character::LockViewFrameEx);
+ SCRIPT_METHOD(Character::LockViewOffset^3, Character::LockViewOffset);
+ SCRIPT_METHOD(Character::LockViewOffset^4, Character::LockViewOffset);
+ SCRIPT_METHOD(Character::LoseInventory^1, Character::LoseInventory);
+ SCRIPT_METHOD(Character::Move^4, Character::Move);
+ SCRIPT_METHOD(Character::PlaceOnWalkableArea^0, Character::PlaceOnWalkableArea);
+ SCRIPT_METHOD(Character::RemoveTint^0, Character::RemoveTint);
+ SCRIPT_METHOD(Character::RunInteraction^1, Character::RunInteraction);
+ SCRIPT_METHOD(Character::Say^101, Character::ScPl_Say);
+ SCRIPT_METHOD(Character::SayAt^4, Character::SayAt);
+ SCRIPT_METHOD(Character::SayBackground^1, Character::SayBackground);
+ SCRIPT_METHOD(Character::SetAsPlayer^0, Character::SetAsPlayer);
+ SCRIPT_METHOD(Character::SetIdleView^2, Character::SetIdleView);
+ //SCRIPT_METHOD(Character::SetOption^2", Character:: (void*)SetOption);
+ SCRIPT_METHOD(Character::SetWalkSpeed^2, Character::SetSpeed);
+ SCRIPT_METHOD(Character::StopMoving^0, Character::StopMoving);
+ SCRIPT_METHOD(Character::Think^101, Character::ScPl_Think);
+ SCRIPT_METHOD(Character::Tint^5, Character::Tint);
+ SCRIPT_METHOD(Character::UnlockView^0, Character::UnlockView);
+ SCRIPT_METHOD(Character::UnlockView^1, Character::UnlockViewEx);
+ SCRIPT_METHOD(Character::Walk^4, Character::Walk);
+ SCRIPT_METHOD(Character::WalkStraight^3, Character::WalkStraight);
+ SCRIPT_METHOD(Character::GetAtRoomXY^2, Character::GetCharacterAtRoom);
+ SCRIPT_METHOD(Character::GetAtScreenXY^2, Character::GetCharacterAtScreen);
+ SCRIPT_METHOD(Character::get_ActiveInventory, Character::GetActiveInventory);
+ SCRIPT_METHOD(Character::set_ActiveInventory, Character::SetActiveInventory);
+ SCRIPT_METHOD(Character::get_Animating, Character::GetAnimating);
+ SCRIPT_METHOD(Character::get_AnimationSpeed, Character::GetAnimationSpeed);
+ SCRIPT_METHOD(Character::set_AnimationSpeed, Character::SetAnimationSpeed);
+ SCRIPT_METHOD(Character::get_Baseline, Character::GetBaseline);
+ SCRIPT_METHOD(Character::set_Baseline, Character::SetBaseline);
+ SCRIPT_METHOD(Character::get_BlinkInterval, Character::GetBlinkInterval);
+ SCRIPT_METHOD(Character::set_BlinkInterval, Character::SetBlinkInterval);
+ SCRIPT_METHOD(Character::get_BlinkView, Character::GetBlinkView);
+ SCRIPT_METHOD(Character::set_BlinkView, Character::SetBlinkView);
+ SCRIPT_METHOD(Character::get_BlinkWhileThinking, Character::GetBlinkWhileThinking);
+ SCRIPT_METHOD(Character::set_BlinkWhileThinking, Character::SetBlinkWhileThinking);
+ SCRIPT_METHOD(Character::get_BlockingHeight, Character::GetBlockingHeight);
+ SCRIPT_METHOD(Character::set_BlockingHeight, Character::SetBlockingHeight);
+ SCRIPT_METHOD(Character::get_BlockingWidth, Character::GetBlockingWidth);
+ SCRIPT_METHOD(Character::set_BlockingWidth, Character::SetBlockingWidth);
+ SCRIPT_METHOD(Character::get_Clickable, Character::GetClickable);
+ SCRIPT_METHOD(Character::set_Clickable, Character::SetClickable);
+ SCRIPT_METHOD(Character::get_DestinationX, Character::GetDestinationX);
+ SCRIPT_METHOD(Character::get_DestinationY, Character::GetDestinationY);
+ SCRIPT_METHOD(Character::get_DiagonalLoops, Character::GetDiagonalWalking);
+ SCRIPT_METHOD(Character::set_DiagonalLoops, Character::SetDiagonalWalking);
+ SCRIPT_METHOD(Character::get_Frame, Character::GetFrame);
+ SCRIPT_METHOD(Character::set_Frame, Character::SetFrame);
if (engine->version < kScriptAPI_v341)
- SCRIPT_METHOD_EXT(Character::get_HasExplicitTint, GetHasExplicitTint_Old);
+ SCRIPT_METHOD(Character::get_HasExplicitTint, Character::GetHasExplicitTint_Old);
else
- SCRIPT_METHOD_EXT(Character::get_HasExplicitTint, GetHasExplicitTint);
- SCRIPT_METHOD_EXT(Character::get_ID, GetID);
- SCRIPT_METHOD_EXT(Character::get_IdleView, GetIdleView);
- SCRIPT_METHOD_EXT(Character::geti_InventoryQuantity, GetIInventoryQuantity);
- SCRIPT_METHOD_EXT(Character::seti_InventoryQuantity, SetIInventoryQuantity);
- SCRIPT_METHOD_EXT(Character::get_IgnoreLighting, GetIgnoreLighting);
- SCRIPT_METHOD_EXT(Character::set_IgnoreLighting, SetIgnoreLighting);
- SCRIPT_METHOD_EXT(Character::get_IgnoreScaling, GetIgnoreScaling);
- SCRIPT_METHOD_EXT(Character::set_IgnoreScaling, SetIgnoreScaling);
- SCRIPT_METHOD_EXT(Character::get_IgnoreWalkbehinds, GetIgnoreWalkbehinds);
- SCRIPT_METHOD_EXT(Character::set_IgnoreWalkbehinds, SetIgnoreWalkbehinds);
- SCRIPT_METHOD_EXT(Character::get_Loop, GetLoop);
- SCRIPT_METHOD_EXT(Character::set_Loop, SetLoop);
- SCRIPT_METHOD_EXT(Character::get_ManualScaling, GetIgnoreScaling);
- SCRIPT_METHOD_EXT(Character::set_ManualScaling, SetManualScaling);
- SCRIPT_METHOD_EXT(Character::get_MovementLinkedToAnimation, GetMovementLinkedToAnimation);
- SCRIPT_METHOD_EXT(Character::set_MovementLinkedToAnimation, SetMovementLinkedToAnimation);
- SCRIPT_METHOD_EXT(Character::get_Moving, GetMoving);
- SCRIPT_METHOD_EXT(Character::get_Name, GetName);
- SCRIPT_METHOD_EXT(Character::set_Name, SetName);
- SCRIPT_METHOD_EXT(Character::get_NormalView, GetNormalView);
- SCRIPT_METHOD_EXT(Character::get_PreviousRoom, GetPreviousRoom);
- SCRIPT_METHOD_EXT(Character::get_Room, GetRoom);
- SCRIPT_METHOD_EXT(Character::get_ScaleMoveSpeed, GetScaleMoveSpeed);
- SCRIPT_METHOD_EXT(Character::set_ScaleMoveSpeed, SetScaleMoveSpeed);
- SCRIPT_METHOD_EXT(Character::get_ScaleVolume, GetScaleVolume);
- SCRIPT_METHOD_EXT(Character::set_ScaleVolume, SetScaleVolume);
- SCRIPT_METHOD_EXT(Character::get_Scaling, GetScaling);
- SCRIPT_METHOD_EXT(Character::set_Scaling, SetScaling);
- SCRIPT_METHOD_EXT(Character::get_Solid, GetSolid);
- SCRIPT_METHOD_EXT(Character::set_Solid, SetSolid);
- SCRIPT_METHOD_EXT(Character::get_Speaking, GetSpeaking);
- SCRIPT_METHOD_EXT(Character::get_SpeakingFrame, GetSpeakingFrame);
- SCRIPT_METHOD_EXT(Character::get_SpeechAnimationDelay, GetCharacterSpeechAnimationDelay);
- SCRIPT_METHOD_EXT(Character::set_SpeechAnimationDelay, SetSpeechAnimationDelay);
- SCRIPT_METHOD_EXT(Character::get_SpeechColor, GetSpeechColor);
- SCRIPT_METHOD_EXT(Character::set_SpeechColor, SetSpeechColor);
- SCRIPT_METHOD_EXT(Character::get_SpeechView, GetSpeechView);
- SCRIPT_METHOD_EXT(Character::set_SpeechView, SetSpeechView);
- SCRIPT_METHOD_EXT(Character::get_ThinkView, GetThinkView);
- SCRIPT_METHOD_EXT(Character::set_ThinkView, SetThinkView);
- SCRIPT_METHOD_EXT(Character::get_Transparency, GetTransparency);
- SCRIPT_METHOD_EXT(Character::set_Transparency, SetTransparency);
- SCRIPT_METHOD_EXT(Character::get_TurnBeforeWalking, GetTurnBeforeWalking);
- SCRIPT_METHOD_EXT(Character::set_TurnBeforeWalking, SetTurnBeforeWalking);
- SCRIPT_METHOD_EXT(Character::get_View, GetView);
- SCRIPT_METHOD_EXT(Character::get_WalkSpeedX, GetWalkSpeedX);
- SCRIPT_METHOD_EXT(Character::get_WalkSpeedY, GetWalkSpeedY);
- SCRIPT_METHOD_EXT(Character::get_X, GetX);
- SCRIPT_METHOD_EXT(Character::set_X, SetX);
- SCRIPT_METHOD_EXT(Character::get_x, GetX);
- SCRIPT_METHOD_EXT(Character::set_x, SetX);
- SCRIPT_METHOD_EXT(Character::get_Y, GetY);
- SCRIPT_METHOD_EXT(Character::set_Y, SetY);
- SCRIPT_METHOD_EXT(Character::get_y, GetY);
- SCRIPT_METHOD_EXT(Character::set_y, SetY);
- SCRIPT_METHOD_EXT(Character::get_Z, GetZ);
- SCRIPT_METHOD_EXT(Character::set_Z, SetZ);
- SCRIPT_METHOD_EXT(Character::get_z, GetZ);
- SCRIPT_METHOD_EXT(Character::set_z, SetZ);
- */
+ SCRIPT_METHOD(Character::get_HasExplicitTint, Character::GetHasExplicitTint);
+ SCRIPT_METHOD(Character::get_ID, Character::GetID);
+ SCRIPT_METHOD(Character::get_IdleView, Character::GetIdleView);
+ SCRIPT_METHOD(Character::geti_InventoryQuantity, Character::GetIInventoryQuantity);
+ SCRIPT_METHOD(Character::seti_InventoryQuantity, Character::SetIInventoryQuantity);
+ SCRIPT_METHOD(Character::get_IgnoreLighting, Character::GetIgnoreLighting);
+ SCRIPT_METHOD(Character::set_IgnoreLighting, Character::SetIgnoreLighting);
+ SCRIPT_METHOD(Character::get_IgnoreScaling, Character::GetIgnoreScaling);
+ SCRIPT_METHOD(Character::set_IgnoreScaling, Character::SetIgnoreScaling);
+ SCRIPT_METHOD(Character::get_IgnoreWalkbehinds, Character::GetIgnoreWalkbehinds);
+ SCRIPT_METHOD(Character::set_IgnoreWalkbehinds, Character::SetIgnoreWalkbehinds);
+ SCRIPT_METHOD(Character::get_Loop, Character::GetLoop);
+ SCRIPT_METHOD(Character::set_Loop, Character::SetLoop);
+ SCRIPT_METHOD(Character::get_ManualScaling, Character::GetIgnoreScaling);
+ SCRIPT_METHOD(Character::set_ManualScaling, Character::SetManualScaling);
+ SCRIPT_METHOD(Character::get_MovementLinkedToAnimation, Character::GetMovementLinkedToAnimation);
+ SCRIPT_METHOD(Character::set_MovementLinkedToAnimation, Character::SetMovementLinkedToAnimation);
+ SCRIPT_METHOD(Character::get_Moving, Character::GetMoving);
+ SCRIPT_METHOD(Character::get_Name, Character::GetName);
+ SCRIPT_METHOD(Character::set_Name, Character::SetName);
+ SCRIPT_METHOD(Character::get_NormalView, Character::GetNormalView);
+ SCRIPT_METHOD(Character::get_PreviousRoom, Character::GetPreviousRoom);
+ SCRIPT_METHOD(Character::get_Room, Character::GetRoom);
+ SCRIPT_METHOD(Character::get_ScaleMoveSpeed, Character::GetScaleMoveSpeed);
+ SCRIPT_METHOD(Character::set_ScaleMoveSpeed, Character::SetScaleMoveSpeed);
+ SCRIPT_METHOD(Character::get_ScaleVolume, Character::GetScaleVolume);
+ SCRIPT_METHOD(Character::set_ScaleVolume, Character::SetScaleVolume);
+ SCRIPT_METHOD(Character::get_Scaling, Character::GetScaling);
+ SCRIPT_METHOD(Character::set_Scaling, Character::SetScaling);
+ SCRIPT_METHOD(Character::get_Solid, Character::GetSolid);
+ SCRIPT_METHOD(Character::set_Solid, Character::SetSolid);
+ SCRIPT_METHOD(Character::get_Speaking, Character::GetSpeaking);
+ SCRIPT_METHOD(Character::get_SpeakingFrame, Character::GetSpeakingFrame);
+ SCRIPT_METHOD(Character::get_SpeechAnimationDelay, Character::GetCharacterSpeechAnimationDelay);
+ SCRIPT_METHOD(Character::set_SpeechAnimationDelay, Character::SetSpeechAnimationDelay);
+ SCRIPT_METHOD(Character::get_SpeechColor, Character::GetSpeechColor);
+ SCRIPT_METHOD(Character::set_SpeechColor, Character::SetSpeechColor);
+ SCRIPT_METHOD(Character::get_SpeechView, Character::GetSpeechView);
+ SCRIPT_METHOD(Character::set_SpeechView, Character::SetSpeechView);
+ SCRIPT_METHOD(Character::get_ThinkView, Character::GetThinkView);
+ SCRIPT_METHOD(Character::set_ThinkView, Character::SetThinkView);
+ SCRIPT_METHOD(Character::get_Transparency, Character::GetTransparency);
+ SCRIPT_METHOD(Character::set_Transparency, Character::SetTransparency);
+ SCRIPT_METHOD(Character::get_TurnBeforeWalking, Character::GetTurnBeforeWalking);
+ SCRIPT_METHOD(Character::set_TurnBeforeWalking, Character::SetTurnBeforeWalking);
+ SCRIPT_METHOD(Character::get_View, Character::GetView);
+ SCRIPT_METHOD(Character::get_WalkSpeedX, Character::GetWalkSpeedX);
+ SCRIPT_METHOD(Character::get_WalkSpeedY, Character::GetWalkSpeedY);
+ SCRIPT_METHOD(Character::get_X, Character::GetX);
+ SCRIPT_METHOD(Character::set_X, Character::SetX);
+ SCRIPT_METHOD(Character::get_x, Character::GetX);
+ SCRIPT_METHOD(Character::set_x, Character::SetX);
+ SCRIPT_METHOD(Character::get_Y, Character::GetY);
+ SCRIPT_METHOD(Character::set_Y, Character::SetY);
+ SCRIPT_METHOD(Character::get_y, Character::GetY);
+ SCRIPT_METHOD(Character::set_y, Character::SetY);
+ SCRIPT_METHOD(Character::get_Z, Character::GetZ);
+ SCRIPT_METHOD(Character::set_Z, Character::SetZ);
+ SCRIPT_METHOD(Character::get_z, Character::GetZ);
+ SCRIPT_METHOD(Character::set_z, Character::SetZ);
}
void Character::AddInventory(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/core.h b/engines/ags/plugins/core/core.h
index 3f6ff51c85..8d958277cc 100644
--- a/engines/ags/plugins/core/core.h
+++ b/engines/ags/plugins/core/core.h
@@ -42,7 +42,7 @@
#include "ags/plugins/core/inv_window.h"
#include "ags/plugins/core/label.h"
#include "ags/plugins/core/listbox.h"
-#include "ags/plugins/core/math.h"
+#include "ags/plugins/core/maths.h"
#include "ags/plugins/core/mouse.h"
#include "ags/plugins/core/object.h"
#include "ags/plugins/core/overlay.h"
@@ -79,8 +79,8 @@ private:
InvWindow _invWindow;
InventoryItem _inventoryItem;
Label _label;
- Listbox _listbox;
- Math _math;
+ ListBox _listbox;
+ Maths _math;
Mouse _mouse;
Object _object;
Overlay _overlay;
diff --git a/engines/ags/plugins/core/date_time.cpp b/engines/ags/plugins/core/date_time.cpp
index fab6515974..9ca99b1630 100644
--- a/engines/ags/plugins/core/date_time.cpp
+++ b/engines/ags/plugins/core/date_time.cpp
@@ -28,16 +28,14 @@ namespace Plugins {
namespace Core {
void DateTime::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(DateTime::get_Now, Now);
- SCRIPT_METHOD_EXT(DateTime::get_DayOfMonth, GetDayOfMonth);
- SCRIPT_METHOD_EXT(DateTime::get_Hour, GetHour);
- SCRIPT_METHOD_EXT(DateTime::get_Minute, GetMinute);
- SCRIPT_METHOD_EXT(DateTime::get_Month, GetMonth);
- SCRIPT_METHOD_EXT(DateTime::get_RawTime, GetRawTime);
- SCRIPT_METHOD_EXT(DateTime::get_Second, GetSecond);
- SCRIPT_METHOD_EXT(DateTime::get_Year, GetYear);
- */
+ SCRIPT_METHOD(DateTime::get_Now, DateTime::Now);
+ SCRIPT_METHOD(DateTime::get_DayOfMonth, DateTime::GetDayOfMonth);
+ SCRIPT_METHOD(DateTime::get_Hour, DateTime::GetHour);
+ SCRIPT_METHOD(DateTime::get_Minute, DateTime::GetMinute);
+ SCRIPT_METHOD(DateTime::get_Month, DateTime::GetMonth);
+ SCRIPT_METHOD(DateTime::get_RawTime, DateTime::GetRawTime);
+ SCRIPT_METHOD(DateTime::get_Second, DateTime::GetSecond);
+ SCRIPT_METHOD(DateTime::get_Year, DateTime::GetYear);
}
void DateTime::Now(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/dialog.cpp b/engines/ags/plugins/core/dialog.cpp
index 2066bb4214..a615f303f6 100644
--- a/engines/ags/plugins/core/dialog.cpp
+++ b/engines/ags/plugins/core/dialog.cpp
@@ -28,17 +28,15 @@ namespace Plugins {
namespace Core {
void Dialog::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(Dialog::get_ID, GetID);
- SCRIPT_METHOD_EXT(Dialog::get_OptionCount, GetOptionCount);
- SCRIPT_METHOD_EXT(Dialog::get_ShowTextParser, GetShowTextParser);
- SCRIPT_METHOD_EXT(Dialog::DisplayOptions^1, DisplayOptions);
- SCRIPT_METHOD_EXT(Dialog::GetOptionState^1, GetOptionState);
- SCRIPT_METHOD_EXT(Dialog::GetOptionText^1, GetOptionText);
- SCRIPT_METHOD_EXT(Dialog::HasOptionBeenChosen^1, HasOptionBeenChosen);
- SCRIPT_METHOD_EXT(Dialog::SetOptionState^2, SetOptionState);
- SCRIPT_METHOD_EXT(Dialog::Start^0, Start);
- */
+ SCRIPT_METHOD(Dialog::get_ID, Dialog::GetID);
+ SCRIPT_METHOD(Dialog::get_OptionCount, Dialog::GetOptionCount);
+ SCRIPT_METHOD(Dialog::get_ShowTextParser, Dialog::GetShowTextParser);
+ SCRIPT_METHOD(Dialog::DisplayOptions^1, Dialog::DisplayOptions);
+ SCRIPT_METHOD(Dialog::GetOptionState^1, Dialog::GetOptionState);
+ SCRIPT_METHOD(Dialog::GetOptionText^1, Dialog::GetOptionText);
+ SCRIPT_METHOD(Dialog::HasOptionBeenChosen^1, Dialog::HasOptionBeenChosen);
+ SCRIPT_METHOD(Dialog::SetOptionState^2, Dialog::SetOptionState);
+ SCRIPT_METHOD(Dialog::Start^0, Dialog::Start);
}
void Dialog::GetID(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/dialog_options_rendering_info.cpp b/engines/ags/plugins/core/dialog_options_rendering_info.cpp
index 32f8ab0bf6..2bf32ad61e 100644
--- a/engines/ags/plugins/core/dialog_options_rendering_info.cpp
+++ b/engines/ags/plugins/core/dialog_options_rendering_info.cpp
@@ -28,26 +28,24 @@ namespace Plugins {
namespace Core {
void DialogOptionsRenderingInfo::AGS_EngineStartup(IAGSEngine *engine) {
-/*
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_ActiveOptionID, GetActiveOptionID);
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_ActiveOptionID, SetActiveOptionID);
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_DialogToRender, GetDialogToRender);
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_Height, GetHeight);
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_Height, SetHeight);
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_ParserTextBoxX, GetParserTextboxX);
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_ParserTextBoxX, SetParserTextboxX);
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_ParserTextBoxY, GetParserTextboxY);
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_ParserTextBoxY, SetParserTextboxY);
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_ParserTextBoxWidth, GetParserTextboxWidth);
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_ParserTextBoxWidth, SetParserTextboxWidth);
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_Surface, GetSurface);
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_Width, GetWidth);
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_Width, SetWidth);
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_X, GetX);
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_X, SetX);
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::get_Y, GetY);
- SCRIPT_METHOD_EXT(DialogOptionsRenderingInfo::set_Y, SetY);
- */
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::get_ActiveOptionID, DialogOptionsRenderingInfo::GetActiveOptionID);
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::set_ActiveOptionID, DialogOptionsRenderingInfo::SetActiveOptionID);
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::get_DialogToRender, DialogOptionsRenderingInfo::GetDialogToRender);
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::get_Height, DialogOptionsRenderingInfo::GetHeight);
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::set_Height, DialogOptionsRenderingInfo::SetHeight);
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::get_ParserTextBoxX, DialogOptionsRenderingInfo::GetParserTextboxX);
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::set_ParserTextBoxX, DialogOptionsRenderingInfo::SetParserTextboxX);
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::get_ParserTextBoxY, DialogOptionsRenderingInfo::GetParserTextboxY);
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::set_ParserTextBoxY, DialogOptionsRenderingInfo::SetParserTextboxY);
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::get_ParserTextBoxWidth, DialogOptionsRenderingInfo::GetParserTextboxWidth);
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::set_ParserTextBoxWidth, DialogOptionsRenderingInfo::SetParserTextboxWidth);
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::get_Surface, DialogOptionsRenderingInfo::GetSurface);
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::get_Width, DialogOptionsRenderingInfo::GetWidth);
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::set_Width, DialogOptionsRenderingInfo::SetWidth);
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::get_X, DialogOptionsRenderingInfo::GetX);
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::set_X, DialogOptionsRenderingInfo::SetX);
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::get_Y, DialogOptionsRenderingInfo::GetY);
+ SCRIPT_METHOD(DialogOptionsRenderingInfo::set_Y, DialogOptionsRenderingInfo::SetY);
}
void DialogOptionsRenderingInfo::GetActiveOptionID(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/drawing_surface.cpp b/engines/ags/plugins/core/drawing_surface.cpp
index 9eab63709c..5f81b9039e 100644
--- a/engines/ags/plugins/core/drawing_surface.cpp
+++ b/engines/ags/plugins/core/drawing_surface.cpp
@@ -29,33 +29,31 @@ namespace Plugins {
namespace Core {
void DrawingSurface::AGS_EngineStartup(IAGSEngine *engine) {
-/*
- SCRIPT_METHOD_EXT(DrawingSurface::Clear^1, Clear);
- SCRIPT_METHOD_EXT(DrawingSurface::CreateCopy^0, CreateCopy);
- SCRIPT_METHOD_EXT(DrawingSurface::DrawCircle^3, DrawCircle);
- SCRIPT_METHOD_EXT(DrawingSurface::DrawImage^6, DrawImage);
- SCRIPT_METHOD_EXT(DrawingSurface::DrawLine^5, DrawLine);
- SCRIPT_METHOD_EXT(DrawingSurface::DrawMessageWrapped^5, DrawMessageWrapped);
- SCRIPT_METHOD_EXT(DrawingSurface::DrawPixel^2, DrawPixel);
- SCRIPT_METHOD_EXT(DrawingSurface::DrawRectangle^4, DrawRectangle);
- SCRIPT_METHOD_EXT(DrawingSurface::DrawString^104, ScPl_DrawString);
+ SCRIPT_METHOD(DrawingSurface::Clear^1, DrawingSurface::Clear);
+ SCRIPT_METHOD(DrawingSurface::CreateCopy^0, DrawingSurface::CreateCopy);
+ SCRIPT_METHOD(DrawingSurface::DrawCircle^3, DrawingSurface::DrawCircle);
+ SCRIPT_METHOD(DrawingSurface::DrawImage^6, DrawingSurface::DrawImage);
+ SCRIPT_METHOD(DrawingSurface::DrawLine^5, DrawingSurface::DrawLine);
+ SCRIPT_METHOD(DrawingSurface::DrawMessageWrapped^5, DrawingSurface::DrawMessageWrapped);
+ SCRIPT_METHOD(DrawingSurface::DrawPixel^2, DrawingSurface::DrawPixel);
+ SCRIPT_METHOD(DrawingSurface::DrawRectangle^4, DrawingSurface::DrawRectangle);
+ SCRIPT_METHOD(DrawingSurface::DrawString^104, DrawingSurface::ScPl_DrawString);
if (engine->version < kScriptAPI_v350)
- SCRIPT_METHOD_EXT(DrawingSurface::DrawStringWrapped^6, DrawStringWrapped_Old);
+ SCRIPT_METHOD(DrawingSurface::DrawStringWrapped^6, DrawingSurface::DrawStringWrapped_Old);
else
- SCRIPT_METHOD_EXT(DrawingSurface::DrawStringWrapped^6, DrawStringWrapped);
-
- SCRIPT_METHOD_EXT(DrawingSurface::DrawSurface^2, DrawSurface);
- SCRIPT_METHOD_EXT(DrawingSurface::DrawTriangle^6, DrawTriangle);
- SCRIPT_METHOD_EXT(DrawingSurface::GetPixel^2, GetPixel);
- SCRIPT_METHOD_EXT(DrawingSurface::Release^0, Release);
- SCRIPT_METHOD_EXT(DrawingSurface::get_DrawingColor, GetDrawingColor);
- SCRIPT_METHOD_EXT(DrawingSurface::set_DrawingColor, SetDrawingColor);
- SCRIPT_METHOD_EXT(DrawingSurface::get_Height, GetHeight);
- SCRIPT_METHOD_EXT(DrawingSurface::get_UseHighResCoordinates, GetUseHighResCoordinates);
- SCRIPT_METHOD_EXT(DrawingSurface::set_UseHighResCoordinates, SetUseHighResCoordinates);
- SCRIPT_METHOD_EXT(DrawingSurface::get_Width, GetWidth);
-*/
+ SCRIPT_METHOD(DrawingSurface::DrawStringWrapped^6, DrawingSurface::DrawStringWrapped);
+
+ SCRIPT_METHOD(DrawingSurface::DrawSurface^2, DrawingSurface::DrawSurface);
+ SCRIPT_METHOD(DrawingSurface::DrawTriangle^6, DrawingSurface::DrawTriangle);
+ SCRIPT_METHOD(DrawingSurface::GetPixel^2, DrawingSurface::GetPixel);
+ SCRIPT_METHOD(DrawingSurface::Release^0, DrawingSurface::Release);
+ SCRIPT_METHOD(DrawingSurface::get_DrawingColor, DrawingSurface::GetDrawingColor);
+ SCRIPT_METHOD(DrawingSurface::set_DrawingColor, DrawingSurface::SetDrawingColor);
+ SCRIPT_METHOD(DrawingSurface::get_Height, DrawingSurface::GetHeight);
+ SCRIPT_METHOD(DrawingSurface::get_UseHighResCoordinates, DrawingSurface::GetUseHighResCoordinates);
+ SCRIPT_METHOD(DrawingSurface::set_UseHighResCoordinates, DrawingSurface::SetUseHighResCoordinates);
+ SCRIPT_METHOD(DrawingSurface::get_Width, DrawingSurface::GetWidth);
}
void DrawingSurface::Clear(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/dynamic_sprite.cpp b/engines/ags/plugins/core/dynamic_sprite.cpp
index f6a3d4240f..af979cea35 100644
--- a/engines/ags/plugins/core/dynamic_sprite.cpp
+++ b/engines/ags/plugins/core/dynamic_sprite.cpp
@@ -28,30 +28,28 @@ namespace Plugins {
namespace Core {
void DynamicSprite::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(DynamicSprite::ChangeCanvasSize^4, ChangeCanvasSize);
- SCRIPT_METHOD_EXT(DynamicSprite::CopyTransparencyMask^1, CopyTransparencyMask);
- SCRIPT_METHOD_EXT(DynamicSprite::Crop^4, Crop);
- SCRIPT_METHOD_EXT(DynamicSprite::Delete, Delete);
- SCRIPT_METHOD_EXT(DynamicSprite::Flip^1, Flip);
- SCRIPT_METHOD_EXT(DynamicSprite::GetDrawingSurface^0, GetDrawingSurface);
- SCRIPT_METHOD_EXT(DynamicSprite::Resize^2, Resize);
- SCRIPT_METHOD_EXT(DynamicSprite::Rotate^3, Rotate);
- SCRIPT_METHOD_EXT(DynamicSprite::SaveToFile^1, SaveToFile);
- SCRIPT_METHOD_EXT(DynamicSprite::Tint^5, Tint);
- SCRIPT_METHOD_EXT(DynamicSprite::get_ColorDepth, GetColorDepth);
- SCRIPT_METHOD_EXT(DynamicSprite::get_Graphic, GetGraphic);
- SCRIPT_METHOD_EXT(DynamicSprite::get_Height, GetHeight);
- SCRIPT_METHOD_EXT(DynamicSprite::get_Width, GetWidth);
- SCRIPT_METHOD_EXT(DynamicSprite::Create^3, Create);
- SCRIPT_METHOD_EXT(DynamicSprite::CreateFromBackground, CreateFromBackground);
- SCRIPT_METHOD_EXT(DynamicSprite::CreateFromDrawingSurface^5, CreateFromDrawingSurface);
- SCRIPT_METHOD_EXT(DynamicSprite::CreateFromExistingSprite^1, CreateFromExistingSprite_Old);
- SCRIPT_METHOD_EXT(DynamicSprite::CreateFromExistingSprite^2, CreateFromExistingSprite);
- SCRIPT_METHOD_EXT(DynamicSprite::CreateFromFile, CreateFromFile);
- SCRIPT_METHOD_EXT(DynamicSprite::CreateFromSaveGame, CreateFromSaveGame);
- SCRIPT_METHOD_EXT(DynamicSprite::CreateFromScreenShot, CreateFromScreenShot);
- */
+ SCRIPT_METHOD(DynamicSprite::ChangeCanvasSize^4, DynamicSprite::ChangeCanvasSize);
+ SCRIPT_METHOD(DynamicSprite::CopyTransparencyMask^1, DynamicSprite::CopyTransparencyMask);
+ SCRIPT_METHOD(DynamicSprite::Crop^4, DynamicSprite::Crop);
+ SCRIPT_METHOD(DynamicSprite::Delete, DynamicSprite::Delete);
+ SCRIPT_METHOD(DynamicSprite::Flip^1, DynamicSprite::Flip);
+ SCRIPT_METHOD(DynamicSprite::GetDrawingSurface^0, DynamicSprite::GetDrawingSurface);
+ SCRIPT_METHOD(DynamicSprite::Resize^2, DynamicSprite::Resize);
+ SCRIPT_METHOD(DynamicSprite::Rotate^3, DynamicSprite::Rotate);
+ SCRIPT_METHOD(DynamicSprite::SaveToFile^1, DynamicSprite::SaveToFile);
+ SCRIPT_METHOD(DynamicSprite::Tint^5, DynamicSprite::Tint);
+ SCRIPT_METHOD(DynamicSprite::get_ColorDepth, DynamicSprite::GetColorDepth);
+ SCRIPT_METHOD(DynamicSprite::get_Graphic, DynamicSprite::GetGraphic);
+ SCRIPT_METHOD(DynamicSprite::get_Height, DynamicSprite::GetHeight);
+ SCRIPT_METHOD(DynamicSprite::get_Width, DynamicSprite::GetWidth);
+ SCRIPT_METHOD(DynamicSprite::Create^3, DynamicSprite::Create);
+ SCRIPT_METHOD(DynamicSprite::CreateFromBackground, DynamicSprite::CreateFromBackground);
+ SCRIPT_METHOD(DynamicSprite::CreateFromDrawingSurface^5, DynamicSprite::CreateFromDrawingSurface);
+ SCRIPT_METHOD(DynamicSprite::CreateFromExistingSprite^1, DynamicSprite::CreateFromExistingSprite_Old);
+ SCRIPT_METHOD(DynamicSprite::CreateFromExistingSprite^2, DynamicSprite::CreateFromExistingSprite);
+ SCRIPT_METHOD(DynamicSprite::CreateFromFile, DynamicSprite::CreateFromFile);
+ SCRIPT_METHOD(DynamicSprite::CreateFromSaveGame, DynamicSprite::CreateFromSaveGame);
+ SCRIPT_METHOD(DynamicSprite::CreateFromScreenShot, DynamicSprite::CreateFromScreenShot);
}
void DynamicSprite::ChangeCanvasSize(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/file.cpp b/engines/ags/plugins/core/file.cpp
index 799434c685..d0df9533c7 100644
--- a/engines/ags/plugins/core/file.cpp
+++ b/engines/ags/plugins/core/file.cpp
@@ -28,25 +28,23 @@ namespace Plugins {
namespace Core {
void File::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(File::Delete^1, Delete);
- SCRIPT_METHOD_EXT(File::Exists^1, Exists);
- SCRIPT_METHOD_EXT(File::Open^2, OpenFile);
- SCRIPT_METHOD_EXT(File::Close^0, Close);
- SCRIPT_METHOD_EXT(File::ReadInt^0, ReadInt);
- SCRIPT_METHOD_EXT(File::ReadRawChar^0, ReadRawChar);
- SCRIPT_METHOD_EXT(File::ReadRawInt^0, ReadRawInt);
- SCRIPT_METHOD_EXT(File::ReadRawLine^1, ReadRawLine);
- SCRIPT_METHOD_EXT(File::ReadRawLineBack^0, ReadRawLineBack);
- SCRIPT_METHOD_EXT(File::ReadString^1, ReadString);
- SCRIPT_METHOD_EXT(File::ReadStringBack^0, ReadStringBack);
- SCRIPT_METHOD_EXT(File::WriteInt^1, WriteInt);
- SCRIPT_METHOD_EXT(File::WriteRawChar^1, WriteRawChar);
- SCRIPT_METHOD_EXT(File::WriteRawLine^1, WriteRawLine);
- SCRIPT_METHOD_EXT(File::WriteString^1, WriteString);
- SCRIPT_METHOD_EXT(File::get_EOF, GetEOF);
- SCRIPT_METHOD_EXT(File::get_Error, GetError);
- */
+ SCRIPT_METHOD(File::Delete^1, File::Delete);
+ SCRIPT_METHOD(File::Exists^1, File::Exists);
+ SCRIPT_METHOD(File::Open^2, File::OpenFile);
+ SCRIPT_METHOD(File::Close^0, File::Close);
+ SCRIPT_METHOD(File::ReadInt^0, File::ReadInt);
+ SCRIPT_METHOD(File::ReadRawChar^0, File::ReadRawChar);
+ SCRIPT_METHOD(File::ReadRawInt^0, File::ReadRawInt);
+ SCRIPT_METHOD(File::ReadRawLine^1, File::ReadRawLine);
+ SCRIPT_METHOD(File::ReadRawLineBack^0, File::ReadRawLineBack);
+ SCRIPT_METHOD(File::ReadString^1, File::ReadString);
+ SCRIPT_METHOD(File::ReadStringBack^0, File::ReadStringBack);
+ SCRIPT_METHOD(File::WriteInt^1, File::WriteInt);
+ SCRIPT_METHOD(File::WriteRawChar^1, File::WriteRawChar);
+ SCRIPT_METHOD(File::WriteRawLine^1, File::WriteRawLine);
+ SCRIPT_METHOD(File::WriteString^1, File::WriteString);
+ SCRIPT_METHOD(File::get_EOF, File::GetEOF);
+ SCRIPT_METHOD(File::get_Error, File::GetError);
}
void File::Delete(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/game.cpp b/engines/ags/plugins/core/game.cpp
index 537c1c9f72..908ec0a01c 100644
--- a/engines/ags/plugins/core/game.cpp
+++ b/engines/ags/plugins/core/game.cpp
@@ -30,55 +30,53 @@ namespace Plugins {
namespace Core {
void Game::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(Game::IsAudioPlaying^1, IsAudioPlaying);
- SCRIPT_METHOD_EXT(Game::SetAudioTypeSpeechVolumeDrop^2, SetAudioTypeSpeechVolumeDrop);
- SCRIPT_METHOD_EXT(Game::SetAudioTypeVolume^3, SetAudioTypeVolume);
- SCRIPT_METHOD_EXT(Game::StopAudio^1, StopAudio);
- SCRIPT_METHOD_EXT(Game::ChangeTranslation^1, ChangeTranslation);
- SCRIPT_METHOD_EXT(Game::DoOnceOnly^1, DoOnceOnly);
- SCRIPT_METHOD_EXT(Game::GetColorFromRGB^3, GetColorFromRGB);
- SCRIPT_METHOD_EXT(Game::GetFrameCountForLoop^2, GetFrameCountForLoop);
- SCRIPT_METHOD_EXT(Game::GetLocationName^2, GetLocationName);
- SCRIPT_METHOD_EXT(Game::GetLoopCountForView^1, GetLoopCountForView);
- SCRIPT_METHOD_EXT(Game::GetMODPattern^0, GetMODPattern);
- SCRIPT_METHOD_EXT(Game::GetRunNextSettingForLoop^2, GetRunNextSettingForLoop);
- SCRIPT_METHOD_EXT(Game::GetSaveSlotDescription^1, GetSaveSlotDescription);
- SCRIPT_METHOD_EXT(Game::GetViewFrame^3, GetViewFrame);
- SCRIPT_METHOD_EXT(Game::InputBox^1, InputBox);
- SCRIPT_METHOD_EXT(Game::SetSaveGameDirectory^1, SetSaveGameDirectory);
- SCRIPT_METHOD_EXT(Game::StopSound^1, StopAllSounds);
- SCRIPT_METHOD_EXT(Game::get_CharacterCount, GetCharacterCount);
- SCRIPT_METHOD_EXT(Game::get_DialogCount, GetDialogCount);
- SCRIPT_METHOD_EXT(Game::get_FileName, GetFileName);
- SCRIPT_METHOD_EXT(Game::get_FontCount, GetFontCount);
- SCRIPT_METHOD_EXT(Game::geti_GlobalMessages, GetGlobalMessages);
- SCRIPT_METHOD_EXT(Game::geti_GlobalStrings, GetGlobalStrings);
- SCRIPT_METHOD_EXT(Game::seti_GlobalStrings, SetGlobalString);
- SCRIPT_METHOD_EXT(Game::get_GUICount, GetGUICount);
- SCRIPT_METHOD_EXT(Game::get_IgnoreUserInputAfterTextTimeoutMs, GetIgnoreUserInputAfterTextTimeoutMs);
- SCRIPT_METHOD_EXT(Game::set_IgnoreUserInputAfterTextTimeoutMs, SetIgnoreUserInputAfterTextTimeoutMs);
- SCRIPT_METHOD_EXT(Game::get_InSkippableCutscene, GetInSkippableCutscene);
- SCRIPT_METHOD_EXT(Game::get_InventoryItemCount, GetInventoryItemCount);
- SCRIPT_METHOD_EXT(Game::get_MinimumTextDisplayTimeMs, GetMinimumTextDisplayTimeMs);
- SCRIPT_METHOD_EXT(Game::set_MinimumTextDisplayTimeMs, SetMinimumTextDisplayTimeMs);
- SCRIPT_METHOD_EXT(Game::get_MouseCursorCount, GetMouseCursorCount);
- SCRIPT_METHOD_EXT(Game::get_Name, GetName);
- SCRIPT_METHOD_EXT(Game::set_Name, SetName);
- SCRIPT_METHOD_EXT(Game::get_NormalFont, GetNormalFont);
- SCRIPT_METHOD_EXT(Game::set_NormalFont, SetNormalFont);
- SCRIPT_METHOD_EXT(Game::get_SkippingCutscene, GetSkippingCutscene);
- SCRIPT_METHOD_EXT(Game::get_SpeechFont, GetSpeechFont);
- SCRIPT_METHOD_EXT(Game::set_SpeechFont, SetSpeechFont);
- SCRIPT_METHOD_EXT(Game::geti_SpriteWidth, GetSpriteWidth);
- SCRIPT_METHOD_EXT(Game::geti_SpriteHeight, GetSpriteHeight);
- SCRIPT_METHOD_EXT(Game::get_TextReadingSpeed, GetTextReadingSpeed);
- SCRIPT_METHOD_EXT(Game::set_TextReadingSpeed, SetTextReadingSpeed);
- SCRIPT_METHOD_EXT(Game::get_TranslationFilename, GetTranslationFilename);
- SCRIPT_METHOD_EXT(Game::get_UseNativeCoordinates, GetUseNativeCoordinates);
- SCRIPT_METHOD_EXT(Game::get_ViewCount, GetViewCount);
- SCRIPT_METHOD_EXT(Game::PlayVoiceClip, PlayVoiceClip);
- */
+ SCRIPT_METHOD(Game::IsAudioPlaying^1, Game::IsAudioPlaying);
+ SCRIPT_METHOD(Game::SetAudioTypeSpeechVolumeDrop^2, Game::SetAudioTypeSpeechVolumeDrop);
+ SCRIPT_METHOD(Game::SetAudioTypeVolume^3, Game::SetAudioTypeVolume);
+ SCRIPT_METHOD(Game::StopAudio^1, Game::StopAudio);
+ SCRIPT_METHOD(Game::ChangeTranslation^1, Game::ChangeTranslation);
+ SCRIPT_METHOD(Game::DoOnceOnly^1, Game::DoOnceOnly);
+ SCRIPT_METHOD(Game::GetColorFromRGB^3, Game::GetColorFromRGB);
+ SCRIPT_METHOD(Game::GetFrameCountForLoop^2, Game::GetFrameCountForLoop);
+ SCRIPT_METHOD(Game::GetLocationName^2, Game::GetLocationName);
+ SCRIPT_METHOD(Game::GetLoopCountForView^1, Game::GetLoopCountForView);
+ SCRIPT_METHOD(Game::GetMODPattern^0, Game::GetMODPattern);
+ SCRIPT_METHOD(Game::GetRunNextSettingForLoop^2, Game::GetRunNextSettingForLoop);
+ SCRIPT_METHOD(Game::GetSaveSlotDescription^1, Game::GetSaveSlotDescription);
+ SCRIPT_METHOD(Game::GetViewFrame^3, Game::GetViewFrame);
+ SCRIPT_METHOD(Game::InputBox^1, Game::InputBox);
+ SCRIPT_METHOD(Game::SetSaveGameDirectory^1, Game::SetSaveGameDirectory);
+ SCRIPT_METHOD(Game::StopSound^1, Game::StopAllSounds);
+ SCRIPT_METHOD(Game::get_CharacterCount, Game::GetCharacterCount);
+ SCRIPT_METHOD(Game::get_DialogCount, Game::GetDialogCount);
+ SCRIPT_METHOD(Game::get_FileName, Game::GetFileName);
+ SCRIPT_METHOD(Game::get_FontCount, Game::GetFontCount);
+ SCRIPT_METHOD(Game::geti_GlobalMessages, Game::GetGlobalMessages);
+ SCRIPT_METHOD(Game::geti_GlobalStrings, Game::GetGlobalStrings);
+ SCRIPT_METHOD(Game::seti_GlobalStrings, Game::SetGlobalString);
+ SCRIPT_METHOD(Game::get_GUICount, Game::GetGUICount);
+ SCRIPT_METHOD(Game::get_IgnoreUserInputAfterTextTimeoutMs, Game::GetIgnoreUserInputAfterTextTimeoutMs);
+ SCRIPT_METHOD(Game::set_IgnoreUserInputAfterTextTimeoutMs, Game::SetIgnoreUserInputAfterTextTimeoutMs);
+ SCRIPT_METHOD(Game::get_InSkippableCutscene, Game::GetInSkippableCutscene);
+ SCRIPT_METHOD(Game::get_InventoryItemCount, Game::GetInventoryItemCount);
+ SCRIPT_METHOD(Game::get_MinimumTextDisplayTimeMs, Game::GetMinimumTextDisplayTimeMs);
+ SCRIPT_METHOD(Game::set_MinimumTextDisplayTimeMs, Game::SetMinimumTextDisplayTimeMs);
+ SCRIPT_METHOD(Game::get_MouseCursorCount, Game::GetMouseCursorCount);
+ SCRIPT_METHOD(Game::get_Name, Game::GetName);
+ SCRIPT_METHOD(Game::set_Name, Game::SetName);
+ SCRIPT_METHOD(Game::get_NormalFont, Game::GetNormalFont);
+ SCRIPT_METHOD(Game::set_NormalFont, Game::SetNormalFont);
+ SCRIPT_METHOD(Game::get_SkippingCutscene, Game::GetSkippingCutscene);
+ SCRIPT_METHOD(Game::get_SpeechFont, Game::GetSpeechFont);
+ SCRIPT_METHOD(Game::set_SpeechFont, Game::SetSpeechFont);
+ SCRIPT_METHOD(Game::geti_SpriteWidth, Game::GetSpriteWidth);
+ SCRIPT_METHOD(Game::geti_SpriteHeight, Game::GetSpriteHeight);
+ SCRIPT_METHOD(Game::get_TextReadingSpeed, Game::GetTextReadingSpeed);
+ SCRIPT_METHOD(Game::set_TextReadingSpeed, Game::SetTextReadingSpeed);
+ SCRIPT_METHOD(Game::get_TranslationFilename, Game::GetTranslationFilename);
+ SCRIPT_METHOD(Game::get_UseNativeCoordinates, Game::GetUseNativeCoordinates);
+ SCRIPT_METHOD(Game::get_ViewCount, Game::GetViewCount);
+ SCRIPT_METHOD(Game::PlayVoiceClip, Game::PlayVoiceClip);
}
void Game::IsAudioPlaying(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/global_api.cpp b/engines/ags/plugins/core/global_api.cpp
index be7dd11d43..20377d7f96 100644
--- a/engines/ags/plugins/core/global_api.cpp
+++ b/engines/ags/plugins/core/global_api.cpp
@@ -76,373 +76,369 @@ namespace Plugins {
namespace Core {
void GlobalAPI::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(AbortGame, ScPl_sc_AbortGame);
- SCRIPT_METHOD_EXT(AddInventory, add_inventory);
- SCRIPT_METHOD_EXT(AddInventoryToCharacter, AddInventoryToCharacter);
- SCRIPT_METHOD_EXT(AnimateButton, AnimateButton);
- SCRIPT_METHOD_EXT(AnimateCharacter, scAnimateCharacter);
- SCRIPT_METHOD_EXT(AnimateCharacterEx, AnimateCharacterEx);
- SCRIPT_METHOD_EXT(AnimateObject, AnimateObject);
- SCRIPT_METHOD_EXT(AnimateObjectEx, AnimateObjectEx);
- SCRIPT_METHOD_EXT(AreCharactersColliding, AreCharactersColliding);
- SCRIPT_METHOD_EXT(AreCharObjColliding, AreCharObjColliding);
- SCRIPT_METHOD_EXT(AreObjectsColliding, AreObjectsColliding);
- SCRIPT_METHOD_EXT(AreThingsOverlapping, AreThingsOverlapping);
- SCRIPT_METHOD_EXT(CallRoomScript, CallRoomScript);
- SCRIPT_METHOD_EXT(CDAudio, cd_manager);
- SCRIPT_METHOD_EXT(CentreGUI, CentreGUI);
- SCRIPT_METHOD_EXT(ChangeCharacterView, ChangeCharacterView);
- SCRIPT_METHOD_EXT(ChangeCursorGraphic, ChangeCursorGraphic);
- SCRIPT_METHOD_EXT(ChangeCursorHotspot, ChangeCursorHotspot);
- SCRIPT_METHOD_EXT(ClaimEvent, ClaimEvent);
- SCRIPT_METHOD_EXT(CreateGraphicOverlay, CreateGraphicOverlay);
- SCRIPT_METHOD_EXT(CreateTextOverlay, ScPl_CreateTextOverlay);
- SCRIPT_METHOD_EXT(CyclePalette, CyclePalette);
- SCRIPT_METHOD_EXT(Debug, script_debug);
- SCRIPT_METHOD_EXT(DeleteSaveSlot, DeleteSaveSlot);
- SCRIPT_METHOD_EXT(DeleteSprite, free_dynamic_sprite);
- SCRIPT_METHOD_EXT(DisableCursorMode, disable_cursor_mode);
- SCRIPT_METHOD_EXT(DisableGroundLevelAreas, DisableGroundLevelAreas);
- SCRIPT_METHOD_EXT(DisableHotspot, DisableHotspot);
- SCRIPT_METHOD_EXT(DisableInterface, DisableInterface);
- SCRIPT_METHOD_EXT(DisableRegion, DisableRegion);
- SCRIPT_METHOD_EXT(Display, ScPl_Display);
- SCRIPT_METHOD_EXT(DisplayAt, ScPl_DisplayAt);
- SCRIPT_METHOD_EXT(DisplayAtY, DisplayAtY);
- SCRIPT_METHOD_EXT(DisplayMessage, DisplayMessage);
- SCRIPT_METHOD_EXT(DisplayMessageAtY, DisplayMessageAtY);
- SCRIPT_METHOD_EXT(DisplayMessageBar, DisplayMessageBar);
- SCRIPT_METHOD_EXT(DisplaySpeech, ScPl_sc_displayspeech);
- SCRIPT_METHOD_EXT(DisplaySpeechAt, DisplaySpeechAt);
- SCRIPT_METHOD_EXT(DisplaySpeechBackground, DisplaySpeechBackground);
- SCRIPT_METHOD_EXT(DisplayThought, ScPl_DisplayThought);
- SCRIPT_METHOD_EXT(DisplayTopBar, ScPl_DisplayTopBar);
- SCRIPT_METHOD_EXT(EnableCursorMode, enable_cursor_mode);
- SCRIPT_METHOD_EXT(EnableGroundLevelAreas, EnableGroundLevelAreas);
- SCRIPT_METHOD_EXT(EnableHotspot, EnableHotspot);
- SCRIPT_METHOD_EXT(EnableInterface, EnableInterface);
- SCRIPT_METHOD_EXT(EnableRegion, EnableRegion);
- SCRIPT_METHOD_EXT(EndCutscene, EndCutscene);
- SCRIPT_METHOD_EXT(FaceCharacter, FaceCharacter);
- SCRIPT_METHOD_EXT(FaceLocation, FaceLocation);
- SCRIPT_METHOD_EXT(FadeIn, FadeIn);
- SCRIPT_METHOD_EXT(FadeOut, my_fade_out);
- SCRIPT_METHOD_EXT(FileClose, FileClose);
- SCRIPT_METHOD_EXT(FileIsEOF, FileIsEOF);
- SCRIPT_METHOD_EXT(FileIsError, FileIsError);
+ SCRIPT_METHOD(AbortGame, GlobalAPI::ScPl_sc_AbortGame);
+ SCRIPT_METHOD(AddInventory, GlobalAPI::add_inventory);
+ SCRIPT_METHOD(AddInventoryToCharacter, GlobalAPI::AddInventoryToCharacter);
+ SCRIPT_METHOD(AnimateButton, GlobalAPI::AnimateButton);
+ SCRIPT_METHOD(AnimateCharacter, GlobalAPI::scAnimateCharacter);
+ SCRIPT_METHOD(AnimateCharacterEx, GlobalAPI::AnimateCharacterEx);
+ SCRIPT_METHOD(AnimateObject, GlobalAPI::AnimateObject);
+ SCRIPT_METHOD(AnimateObjectEx, GlobalAPI::AnimateObjectEx);
+ SCRIPT_METHOD(AreCharactersColliding, GlobalAPI::AreCharactersColliding);
+ SCRIPT_METHOD(AreCharObjColliding, GlobalAPI::AreCharObjColliding);
+ SCRIPT_METHOD(AreObjectsColliding, GlobalAPI::AreObjectsColliding);
+ SCRIPT_METHOD(AreThingsOverlapping, GlobalAPI::AreThingsOverlapping);
+ SCRIPT_METHOD(CallRoomScript, GlobalAPI::CallRoomScript);
+ SCRIPT_METHOD(CDAudio, GlobalAPI::cd_manager);
+ SCRIPT_METHOD(CentreGUI, GlobalAPI::CentreGUI);
+ SCRIPT_METHOD(ChangeCharacterView, GlobalAPI::ChangeCharacterView);
+ SCRIPT_METHOD(ChangeCursorGraphic, GlobalAPI::ChangeCursorGraphic);
+ SCRIPT_METHOD(ChangeCursorHotspot, GlobalAPI::ChangeCursorHotspot);
+ SCRIPT_METHOD(ClaimEvent, GlobalAPI::ClaimEvent);
+ SCRIPT_METHOD(CreateGraphicOverlay, GlobalAPI::CreateGraphicOverlay);
+ SCRIPT_METHOD(CreateTextOverlay, GlobalAPI::ScPl_CreateTextOverlay);
+ SCRIPT_METHOD(CyclePalette, GlobalAPI::CyclePalette);
+ SCRIPT_METHOD(Debug, GlobalAPI::script_debug);
+ SCRIPT_METHOD(DeleteSaveSlot, GlobalAPI::DeleteSaveSlot);
+ SCRIPT_METHOD(DeleteSprite, GlobalAPI::free_dynamic_sprite);
+ SCRIPT_METHOD(DisableCursorMode, GlobalAPI::disable_cursor_mode);
+ SCRIPT_METHOD(DisableGroundLevelAreas, GlobalAPI::DisableGroundLevelAreas);
+ SCRIPT_METHOD(DisableHotspot, GlobalAPI::DisableHotspot);
+ SCRIPT_METHOD(DisableInterface, GlobalAPI::DisableInterface);
+ SCRIPT_METHOD(DisableRegion, GlobalAPI::DisableRegion);
+ SCRIPT_METHOD(Display, GlobalAPI::ScPl_Display);
+ SCRIPT_METHOD(DisplayAt, GlobalAPI::ScPl_DisplayAt);
+ SCRIPT_METHOD(DisplayAtY, GlobalAPI::DisplayAtY);
+ SCRIPT_METHOD(DisplayMessage, GlobalAPI::DisplayMessage);
+ SCRIPT_METHOD(DisplayMessageAtY, GlobalAPI::DisplayMessageAtY);
+ SCRIPT_METHOD(DisplayMessageBar, GlobalAPI::DisplayMessageBar);
+ SCRIPT_METHOD(DisplaySpeech, GlobalAPI::ScPl_sc_displayspeech);
+ SCRIPT_METHOD(DisplaySpeechAt, GlobalAPI::DisplaySpeechAt);
+ SCRIPT_METHOD(DisplaySpeechBackground, GlobalAPI::DisplaySpeechBackground);
+ SCRIPT_METHOD(DisplayThought, GlobalAPI::ScPl_DisplayThought);
+ SCRIPT_METHOD(DisplayTopBar, GlobalAPI::ScPl_DisplayTopBar);
+ SCRIPT_METHOD(EnableCursorMode, GlobalAPI::enable_cursor_mode);
+ SCRIPT_METHOD(EnableGroundLevelAreas, GlobalAPI::EnableGroundLevelAreas);
+ SCRIPT_METHOD(EnableHotspot, GlobalAPI::EnableHotspot);
+ SCRIPT_METHOD(EnableInterface, GlobalAPI::EnableInterface);
+ SCRIPT_METHOD(EnableRegion, GlobalAPI::EnableRegion);
+ SCRIPT_METHOD(EndCutscene, GlobalAPI::EndCutscene);
+ SCRIPT_METHOD(FaceCharacter, GlobalAPI::FaceCharacter);
+ SCRIPT_METHOD(FaceLocation, GlobalAPI::FaceLocation);
+ SCRIPT_METHOD(FadeIn, GlobalAPI::FadeIn);
+ SCRIPT_METHOD(FadeOut, GlobalAPI::my_fade_out);
+ SCRIPT_METHOD(FileClose, GlobalAPI::FileClose);
+ SCRIPT_METHOD(FileIsEOF, GlobalAPI::FileIsEOF);
+ SCRIPT_METHOD(FileIsError, GlobalAPI::FileIsError);
// NOTE: FileOpenCMode is a backwards-compatible replacement for old-style global script function FileOpen
- SCRIPT_METHOD_EXT(FileOpen, FileOpenCMode);
- SCRIPT_METHOD_EXT(FileRead, FileRead);
- SCRIPT_METHOD_EXT(FileReadInt, FileReadInt);
- SCRIPT_METHOD_EXT(FileReadRawChar, FileReadRawChar);
- SCRIPT_METHOD_EXT(FileReadRawInt, FileReadRawInt);
- SCRIPT_METHOD_EXT(FileWrite, FileWrite);
- SCRIPT_METHOD_EXT(FileWriteInt, FileWriteInt);
- SCRIPT_METHOD_EXT(FileWriteRawChar, FileWriteRawChar);
- SCRIPT_METHOD_EXT(FileWriteRawLine, FileWriteRawLine);
- SCRIPT_METHOD_EXT(FindGUIID, FindGUIID);
- SCRIPT_METHOD_EXT(FlipScreen, FlipScreen);
- SCRIPT_METHOD_EXT(FloatToInt, FloatToInt);
- SCRIPT_METHOD_EXT(FollowCharacter, FollowCharacter);
- SCRIPT_METHOD_EXT(FollowCharacterEx, FollowCharacterEx);
- SCRIPT_METHOD_EXT(GetBackgroundFrame, GetBackgroundFrame);
- SCRIPT_METHOD_EXT(GetButtonPic, GetButtonPic);
- SCRIPT_METHOD_EXT(GetCharacterAt, GetCharIDAtScreen);
- SCRIPT_METHOD_EXT(GetCharacterProperty, GetCharacterProperty);
- SCRIPT_METHOD_EXT(GetCharacterPropertyText, GetCharacterPropertyText);
- SCRIPT_METHOD_EXT(GetCurrentMusic, GetCurrentMusic);
- SCRIPT_METHOD_EXT(GetCursorMode, GetCursorMode);
- SCRIPT_METHOD_EXT(GetDialogOption, GetDialogOption);
- SCRIPT_METHOD_EXT(GetGameOption, GetGameOption);
- SCRIPT_METHOD_EXT(GetGameParameter, GetGameParameter);
- SCRIPT_METHOD_EXT(GetGameSpeed, GetGameSpeed);
- SCRIPT_METHOD_EXT(GetGlobalInt, GetGlobalInt);
- SCRIPT_METHOD_EXT(GetGlobalString, GetGlobalString);
- SCRIPT_METHOD_EXT(GetGraphicalVariable, GetGraphicalVariable);
- SCRIPT_METHOD_EXT(GetGUIAt, GetGUIAt);
- SCRIPT_METHOD_EXT(GetGUIObjectAt, GetGUIObjectAt);
- SCRIPT_METHOD_EXT(GetHotspotAt, GetHotspotIDAtScreen);
- SCRIPT_METHOD_EXT(GetHotspotName, GetHotspotName);
- SCRIPT_METHOD_EXT(GetHotspotPointX, GetHotspotPointX);
- SCRIPT_METHOD_EXT(GetHotspotPointY, GetHotspotPointY);
- SCRIPT_METHOD_EXT(GetHotspotProperty, GetHotspotProperty);
- SCRIPT_METHOD_EXT(GetHotspotPropertyText, GetHotspotPropertyText);
- SCRIPT_METHOD_EXT(GetInvAt, GetInvAt);
- SCRIPT_METHOD_EXT(GetInvGraphic, GetInvGraphic);
- SCRIPT_METHOD_EXT(GetInvName, GetInvName);
- SCRIPT_METHOD_EXT(GetInvProperty, GetInvProperty);
- SCRIPT_METHOD_EXT(GetInvPropertyText, GetInvPropertyText);
- //SCRIPT_METHOD_EXT(GetLanguageString", (void*)GetLanguageString);
- SCRIPT_METHOD_EXT(GetLocationName, GetLocationName);
- SCRIPT_METHOD_EXT(GetLocationType, GetLocationType);
- SCRIPT_METHOD_EXT(GetMessageText, GetMessageText);
- SCRIPT_METHOD_EXT(GetMIDIPosition, GetMIDIPosition);
- SCRIPT_METHOD_EXT(GetMP3PosMillis, GetMP3PosMillis);
- SCRIPT_METHOD_EXT(GetObjectAt, GetObjectIDAtScreen);
- SCRIPT_METHOD_EXT(GetObjectBaseline, GetObjectBaseline);
- SCRIPT_METHOD_EXT(GetObjectGraphic, GetObjectGraphic);
- SCRIPT_METHOD_EXT(GetObjectName, GetObjectName);
- SCRIPT_METHOD_EXT(GetObjectProperty, GetObjectProperty);
- SCRIPT_METHOD_EXT(GetObjectPropertyText, GetObjectPropertyText);
- SCRIPT_METHOD_EXT(GetObjectX, GetObjectX);
- SCRIPT_METHOD_EXT(GetObjectY, GetObjectY);
- // SCRIPT_METHOD_EXT(GetPalette", (void*)scGetPal);
- SCRIPT_METHOD_EXT(GetPlayerCharacter, GetPlayerCharacter);
- SCRIPT_METHOD_EXT(GetRawTime, GetRawTime);
- SCRIPT_METHOD_EXT(GetRegionAt, GetRegionIDAtRoom);
- SCRIPT_METHOD_EXT(GetRoomProperty, Room_GetProperty);
- SCRIPT_METHOD_EXT(GetRoomPropertyText, GetRoomPropertyText);
- SCRIPT_METHOD_EXT(GetSaveSlotDescription, GetSaveSlotDescription);
- SCRIPT_METHOD_EXT(GetScalingAt, GetScalingAt);
- SCRIPT_METHOD_EXT(GetSliderValue, GetSliderValue);
- SCRIPT_METHOD_EXT(GetTextBoxText, GetTextBoxText);
- SCRIPT_METHOD_EXT(GetTextHeight, GetTextHeight);
- SCRIPT_METHOD_EXT(GetTextWidth, GetTextWidth);
- SCRIPT_METHOD_EXT(GetTime, sc_GetTime);
- SCRIPT_METHOD_EXT(GetTranslation, get_translation);
- SCRIPT_METHOD_EXT(GetTranslationName, GetTranslationName);
- SCRIPT_METHOD_EXT(GetViewportX, GetViewportX);
- SCRIPT_METHOD_EXT(GetViewportY, GetViewportY);
- SCRIPT_METHOD_EXT(GetWalkableAreaAtRoom, GetWalkableAreaAtRoom);
- SCRIPT_METHOD_EXT(GetWalkableAreaAt, GetWalkableAreaAtScreen);
- SCRIPT_METHOD_EXT(GetWalkableAreaAtScreen, GetWalkableAreaAtScreen);
- SCRIPT_METHOD_EXT(GiveScore, GiveScore);
- SCRIPT_METHOD_EXT(HasPlayerBeenInRoom, HasPlayerBeenInRoom);
- SCRIPT_METHOD_EXT(HideMouseCursor, HideMouseCursor);
- SCRIPT_METHOD_EXT(InputBox, sc_inputbox);
- SCRIPT_METHOD_EXT(InterfaceOff, InterfaceOff);
- SCRIPT_METHOD_EXT(InterfaceOn, InterfaceOn);
- SCRIPT_METHOD_EXT(IntToFloat, IntToFloat);
- SCRIPT_METHOD_EXT(InventoryScreen, sc_invscreen);
- SCRIPT_METHOD_EXT(IsButtonDown, IsButtonDown);
- SCRIPT_METHOD_EXT(IsChannelPlaying, IsChannelPlaying);
- SCRIPT_METHOD_EXT(IsGamePaused, IsGamePaused);
- SCRIPT_METHOD_EXT(IsGUIOn, IsGUIOn);
- SCRIPT_METHOD_EXT(IsInteractionAvailable, IsInteractionAvailable);
- SCRIPT_METHOD_EXT(IsInventoryInteractionAvailable, IsInventoryInteractionAvailable);
- SCRIPT_METHOD_EXT(IsInterfaceEnabled, IsInterfaceEnabled);
- SCRIPT_METHOD_EXT(IsKeyPressed, IsKeyPressed);
- SCRIPT_METHOD_EXT(IsMusicPlaying, IsMusicPlaying);
- SCRIPT_METHOD_EXT(IsMusicVoxAvailable, IsMusicVoxAvailable);
- SCRIPT_METHOD_EXT(IsObjectAnimating, IsObjectAnimating);
- SCRIPT_METHOD_EXT(IsObjectMoving, IsObjectMoving);
- SCRIPT_METHOD_EXT(IsObjectOn, IsObjectOn);
- SCRIPT_METHOD_EXT(IsOverlayValid, IsOverlayValid);
- SCRIPT_METHOD_EXT(IsSoundPlaying, IsSoundPlaying);
- SCRIPT_METHOD_EXT(IsTimerExpired, IsTimerExpired);
- SCRIPT_METHOD_EXT(IsTranslationAvailable, IsTranslationAvailable);
- SCRIPT_METHOD_EXT(IsVoxAvailable, IsVoxAvailable);
- SCRIPT_METHOD_EXT(ListBoxAdd, ListBoxAdd);
- SCRIPT_METHOD_EXT(ListBoxClear, ListBoxClear);
- SCRIPT_METHOD_EXT(ListBoxDirList, ListBoxDirList);
- SCRIPT_METHOD_EXT(ListBoxGetItemText, ListBoxGetItemText);
- SCRIPT_METHOD_EXT(ListBoxGetNumItems, ListBoxGetNumItems);
- SCRIPT_METHOD_EXT(ListBoxGetSelected, ListBoxGetSelected);
- SCRIPT_METHOD_EXT(ListBoxRemove, ListBoxRemove);
- SCRIPT_METHOD_EXT(ListBoxSaveGameList, ListBoxSaveGameList);
- SCRIPT_METHOD_EXT(ListBoxSetSelected, ListBoxSetSelected);
- SCRIPT_METHOD_EXT(ListBoxSetTopItem, ListBoxSetTopItem);
- SCRIPT_METHOD_EXT(LoadImageFile, LoadImageFile);
- SCRIPT_METHOD_EXT(LoadSaveSlotScreenshot, LoadSaveSlotScreenshot);
- SCRIPT_METHOD_EXT(LoseInventory, lose_inventory);
- SCRIPT_METHOD_EXT(LoseInventoryFromCharacter, LoseInventoryFromCharacter);
- SCRIPT_METHOD_EXT(MergeObject, MergeObject);
- SCRIPT_METHOD_EXT(MoveCharacter, MoveCharacter);
- SCRIPT_METHOD_EXT(MoveCharacterBlocking, MoveCharacterBlocking);
- SCRIPT_METHOD_EXT(MoveCharacterDirect, MoveCharacterDirect);
- SCRIPT_METHOD_EXT(MoveCharacterPath, MoveCharacterPath);
- SCRIPT_METHOD_EXT(MoveCharacterStraight, MoveCharacterStraight);
- SCRIPT_METHOD_EXT(MoveCharacterToHotspot, MoveCharacterToHotspot);
- SCRIPT_METHOD_EXT(MoveCharacterToObject, MoveCharacterToObject);
- SCRIPT_METHOD_EXT(MoveObject, MoveObject);
- SCRIPT_METHOD_EXT(MoveObjectDirect, MoveObjectDirect);
- SCRIPT_METHOD_EXT(MoveOverlay, MoveOverlay);
- SCRIPT_METHOD_EXT(MoveToWalkableArea, MoveToWalkableArea);
- SCRIPT_METHOD_EXT(NewRoom, NewRoom);
- SCRIPT_METHOD_EXT(NewRoomEx, NewRoomEx);
- SCRIPT_METHOD_EXT(NewRoomNPC, NewRoomNPC);
- SCRIPT_METHOD_EXT(ObjectOff, ObjectOff);
- SCRIPT_METHOD_EXT(ObjectOn, ObjectOn);
- SCRIPT_METHOD_EXT(ParseText, ParseText);
- SCRIPT_METHOD_EXT(PauseGame, PauseGame);
- SCRIPT_METHOD_EXT(PlayAmbientSound, PlayAmbientSound);
- SCRIPT_METHOD_EXT(PlayFlic, play_flc_file);
- SCRIPT_METHOD_EXT(PlayMP3File, PlayMP3File);
- SCRIPT_METHOD_EXT(PlayMusic, PlayMusicResetQueue);
- SCRIPT_METHOD_EXT(PlayMusicQueued, PlayMusicQueued);
- SCRIPT_METHOD_EXT(PlaySilentMIDI, PlaySilentMIDI);
- SCRIPT_METHOD_EXT(PlaySound, play_sound);
- SCRIPT_METHOD_EXT(PlaySoundEx, PlaySoundEx);
- SCRIPT_METHOD_EXT(PlayVideo, scrPlayVideo);
- SCRIPT_METHOD_EXT(ProcessClick, RoomProcessClick);
- SCRIPT_METHOD_EXT(QuitGame, QuitGame);
- SCRIPT_METHOD_EXT(Random, __Rand);
- SCRIPT_METHOD_EXT(RawClearScreen, RawClear);
- SCRIPT_METHOD_EXT(RawDrawCircle, RawDrawCircle);
- SCRIPT_METHOD_EXT(RawDrawFrameTransparent, RawDrawFrameTransparent);
- SCRIPT_METHOD_EXT(RawDrawImage, RawDrawImage);
- SCRIPT_METHOD_EXT(RawDrawImageOffset, RawDrawImageOffset);
- SCRIPT_METHOD_EXT(RawDrawImageResized, RawDrawImageResized);
- SCRIPT_METHOD_EXT(RawDrawImageTransparent, RawDrawImageTransparent);
- SCRIPT_METHOD_EXT(RawDrawLine, RawDrawLine);
- SCRIPT_METHOD_EXT(RawDrawRectangle, RawDrawRectangle);
- SCRIPT_METHOD_EXT(RawDrawTriangle, RawDrawTriangle);
- SCRIPT_METHOD_EXT(RawPrint, ScPl_RawPrint);
- SCRIPT_METHOD_EXT(RawPrintMessageWrapped, RawPrintMessageWrapped);
- SCRIPT_METHOD_EXT(RawRestoreScreen, RawRestoreScreen);
- SCRIPT_METHOD_EXT(RawRestoreScreenTinted, RawRestoreScreenTinted);
- SCRIPT_METHOD_EXT(RawSaveScreen, RawSaveScreen);
- SCRIPT_METHOD_EXT(RawSetColor, RawSetColor);
- SCRIPT_METHOD_EXT(RawSetColorRGB, RawSetColorRGB);
- SCRIPT_METHOD_EXT(RefreshMouse, RefreshMouse);
- SCRIPT_METHOD_EXT(ReleaseCharacterView, ReleaseCharacterView);
- SCRIPT_METHOD_EXT(ReleaseViewport, ReleaseViewport);
- SCRIPT_METHOD_EXT(RemoveObjectTint, RemoveObjectTint);
- SCRIPT_METHOD_EXT(RemoveOverlay, RemoveOverlay);
- SCRIPT_METHOD_EXT(RemoveWalkableArea, RemoveWalkableArea);
- SCRIPT_METHOD_EXT(ResetRoom, ResetRoom);
- SCRIPT_METHOD_EXT(RestartGame, restart_game);
- SCRIPT_METHOD_EXT(RestoreGameDialog, restore_game_dialog);
- SCRIPT_METHOD_EXT(RestoreGameSlot, RestoreGameSlot);
- SCRIPT_METHOD_EXT(RestoreWalkableArea, RestoreWalkableArea);
- SCRIPT_METHOD_EXT(RunAGSGame, RunAGSGame);
- SCRIPT_METHOD_EXT(RunCharacterInteraction, RunCharacterInteraction);
- SCRIPT_METHOD_EXT(RunDialog, RunDialog);
- SCRIPT_METHOD_EXT(RunHotspotInteraction, RunHotspotInteraction);
- SCRIPT_METHOD_EXT(RunInventoryInteraction, RunInventoryInteraction);
- SCRIPT_METHOD_EXT(RunObjectInteraction, RunObjectInteraction);
- SCRIPT_METHOD_EXT(RunRegionInteraction, RunRegionInteraction);
- SCRIPT_METHOD_EXT(Said, Said);
- SCRIPT_METHOD_EXT(SaidUnknownWord, SaidUnknownWord);
- SCRIPT_METHOD_EXT(SaveCursorForLocationChange, SaveCursorForLocationChange);
- SCRIPT_METHOD_EXT(SaveGameDialog, save_game_dialog);
- SCRIPT_METHOD_EXT(SaveGameSlot, save_game);
- SCRIPT_METHOD_EXT(SaveScreenShot, SaveScreenShot);
- SCRIPT_METHOD_EXT(SeekMIDIPosition, SeekMIDIPosition);
- SCRIPT_METHOD_EXT(SeekMODPattern, SeekMODPattern);
- SCRIPT_METHOD_EXT(SeekMP3PosMillis, SeekMP3PosMillis);
- SCRIPT_METHOD_EXT(SetActiveInventory, SetActiveInventory);
- SCRIPT_METHOD_EXT(SetAmbientTint, SetAmbientTint);
- SCRIPT_METHOD_EXT(SetAreaLightLevel, SetAreaLightLevel);
- SCRIPT_METHOD_EXT(SetAreaScaling, SetAreaScaling);
- SCRIPT_METHOD_EXT(SetBackgroundFrame, SetBackgroundFrame);
- SCRIPT_METHOD_EXT(SetButtonPic, SetButtonPic);
- SCRIPT_METHOD_EXT(SetButtonText, SetButtonText);
- SCRIPT_METHOD_EXT(SetChannelVolume, SetChannelVolume);
- SCRIPT_METHOD_EXT(SetCharacterBaseline, SetCharacterBaseline);
- SCRIPT_METHOD_EXT(SetCharacterClickable, SetCharacterClickable);
- SCRIPT_METHOD_EXT(SetCharacterFrame, SetCharacterFrame);
- SCRIPT_METHOD_EXT(SetCharacterIdle, SetCharacterIdle);
- SCRIPT_METHOD_EXT(SetCharacterIgnoreLight, SetCharacterIgnoreLight);
- SCRIPT_METHOD_EXT(SetCharacterIgnoreWalkbehinds, SetCharacterIgnoreWalkbehinds);
- SCRIPT_METHOD_EXT(SetCharacterProperty, SetCharacterProperty);
- SCRIPT_METHOD_EXT(SetCharacterBlinkView, SetCharacterBlinkView);
- SCRIPT_METHOD_EXT(SetCharacterSpeechView, SetCharacterSpeechView);
- SCRIPT_METHOD_EXT(SetCharacterSpeed, SetCharacterSpeed);
- SCRIPT_METHOD_EXT(SetCharacterSpeedEx, SetCharacterSpeedEx);
- SCRIPT_METHOD_EXT(SetCharacterTransparency, SetCharacterTransparency);
- SCRIPT_METHOD_EXT(SetCharacterView, SetCharacterView);
- SCRIPT_METHOD_EXT(SetCharacterViewEx, SetCharacterViewEx);
- SCRIPT_METHOD_EXT(SetCharacterViewOffset, SetCharacterViewOffset);
- SCRIPT_METHOD_EXT(SetCursorMode, set_cursor_mode);
- SCRIPT_METHOD_EXT(SetDefaultCursor, set_default_cursor);
- SCRIPT_METHOD_EXT(SetDialogOption, SetDialogOption);
- SCRIPT_METHOD_EXT(SetDigitalMasterVolume, SetDigitalMasterVolume);
- SCRIPT_METHOD_EXT(SetFadeColor, SetFadeColor);
- SCRIPT_METHOD_EXT(SetFrameSound, SetFrameSound);
- SCRIPT_METHOD_EXT(SetGameOption, SetGameOption);
- SCRIPT_METHOD_EXT(SetGameSpeed, SetGameSpeed);
- SCRIPT_METHOD_EXT(SetGlobalInt, SetGlobalInt);
- SCRIPT_METHOD_EXT(SetGlobalString, SetGlobalString);
- SCRIPT_METHOD_EXT(SetGraphicalVariable, SetGraphicalVariable);
- SCRIPT_METHOD_EXT(SetGUIBackgroundPic, SetGUIBackgroundPic);
- SCRIPT_METHOD_EXT(SetGUIClickable, SetGUIClickable);
- SCRIPT_METHOD_EXT(SetGUIObjectEnabled, SetGUIObjectEnabled);
- SCRIPT_METHOD_EXT(SetGUIObjectPosition, SetGUIObjectPosition);
- SCRIPT_METHOD_EXT(SetGUIObjectSize, SetGUIObjectSize);
- SCRIPT_METHOD_EXT(SetGUIPosition, SetGUIPosition);
- SCRIPT_METHOD_EXT(SetGUISize, SetGUISize);
- SCRIPT_METHOD_EXT(SetGUITransparency, SetGUITransparency);
- SCRIPT_METHOD_EXT(SetGUIZOrder, SetGUIZOrder);
- SCRIPT_METHOD_EXT(SetInvItemName, SetInvItemName);
- SCRIPT_METHOD_EXT(SetInvItemPic, set_inv_item_pic);
- SCRIPT_METHOD_EXT(SetInvDimensions, SetInvDimensions);
- SCRIPT_METHOD_EXT(SetLabelColor, SetLabelColor);
- SCRIPT_METHOD_EXT(SetLabelFont, SetLabelFont);
- SCRIPT_METHOD_EXT(SetLabelText, SetLabelText);
- SCRIPT_METHOD_EXT(SetMouseBounds, SetMouseBounds);
- SCRIPT_METHOD_EXT(SetMouseCursor, set_mouse_cursor);
- SCRIPT_METHOD_EXT(SetMousePosition, SetMousePosition);
- SCRIPT_METHOD_EXT(SetMultitaskingMode, SetMultitasking);
- SCRIPT_METHOD_EXT(SetMusicMasterVolume, SetMusicMasterVolume);
- SCRIPT_METHOD_EXT(SetMusicRepeat, SetMusicRepeat);
- SCRIPT_METHOD_EXT(SetMusicVolume, SetMusicVolume);
- SCRIPT_METHOD_EXT(SetNextCursorMode, SetNextCursor);
- SCRIPT_METHOD_EXT(SetNextScreenTransition, SetNextScreenTransition);
- SCRIPT_METHOD_EXT(SetNormalFont, SetNormalFont);
- SCRIPT_METHOD_EXT(SetObjectBaseline, SetObjectBaseline);
- SCRIPT_METHOD_EXT(SetObjectClickable, SetObjectClickable);
- SCRIPT_METHOD_EXT(SetObjectFrame, SetObjectFrame);
- SCRIPT_METHOD_EXT(SetObjectGraphic, SetObjectGraphic);
- SCRIPT_METHOD_EXT(SetObjectIgnoreWalkbehinds, SetObjectIgnoreWalkbehinds);
- SCRIPT_METHOD_EXT(SetObjectPosition, SetObjectPosition);
- SCRIPT_METHOD_EXT(SetObjectTint, SetObjectTint);
- SCRIPT_METHOD_EXT(SetObjectTransparency, SetObjectTransparency);
- SCRIPT_METHOD_EXT(SetObjectView, SetObjectView);
- // SCRIPT_METHOD_EXT(SetPalette", (void*)scSetPal);
- SCRIPT_METHOD_EXT(SetPalRGB, SetPalRGB);
- SCRIPT_METHOD_EXT(SetPlayerCharacter, SetPlayerCharacter);
- SCRIPT_METHOD_EXT(SetRegionTint, SetRegionTint);
- SCRIPT_METHOD_EXT(SetRestartPoint, SetRestartPoint);
- SCRIPT_METHOD_EXT(SetScreenTransition, SetScreenTransition);
- SCRIPT_METHOD_EXT(SetSkipSpeech, SetSkipSpeech);
- SCRIPT_METHOD_EXT(SetSliderValue, SetSliderValue);
- SCRIPT_METHOD_EXT(SetSoundVolume, SetSoundVolume);
- SCRIPT_METHOD_EXT(SetSpeechFont, SetSpeechFont);
- SCRIPT_METHOD_EXT(SetSpeechStyle, SetSpeechStyle);
- SCRIPT_METHOD_EXT(SetSpeechVolume, SetSpeechVolume);
- SCRIPT_METHOD_EXT(SetTalkingColor, SetTalkingColor);
- SCRIPT_METHOD_EXT(SetTextBoxFont, SetTextBoxFont);
- SCRIPT_METHOD_EXT(SetTextBoxText, SetTextBoxText);
- SCRIPT_METHOD_EXT(SetTextOverlay, ScPl_SetTextOverlay);
- SCRIPT_METHOD_EXT(SetTextWindowGUI, SetTextWindowGUI);
- SCRIPT_METHOD_EXT(SetTimer, script_SetTimer);
- SCRIPT_METHOD_EXT(SetViewport, SetViewport);
- SCRIPT_METHOD_EXT(SetVoiceMode, SetVoiceMode);
- SCRIPT_METHOD_EXT(SetWalkBehindBase, SetWalkBehindBase);
- SCRIPT_METHOD_EXT(ShakeScreen, ShakeScreen);
- SCRIPT_METHOD_EXT(ShakeScreenBackground, ShakeScreenBackground);
- SCRIPT_METHOD_EXT(ShowMouseCursor, ShowMouseCursor);
- SCRIPT_METHOD_EXT(SkipUntilCharacterStops, SkipUntilCharacterStops);
- SCRIPT_METHOD_EXT(StartCutscene, StartCutscene);
- SCRIPT_METHOD_EXT(StartRecording, scStartRecording);
- SCRIPT_METHOD_EXT(StopAmbientSound, StopAmbientSound);
- SCRIPT_METHOD_EXT(StopChannel, stop_and_destroy_channel);
- SCRIPT_METHOD_EXT(StopDialog, StopDialog);
- SCRIPT_METHOD_EXT(StopMoving, StopMoving);
- SCRIPT_METHOD_EXT(StopMusic, scr_StopMusic);
- SCRIPT_METHOD_EXT(StopObjectMoving, StopObjectMoving);
- SCRIPT_METHOD_EXT(StrCat, _sc_strcat);
- SCRIPT_METHOD_EXT(StrCaseComp, ags_stricmp);
- SCRIPT_METHOD_EXT(StrComp, strcmp);
- SCRIPT_METHOD_EXT(StrContains, StrContains);
- SCRIPT_METHOD_EXT(StrCopy, _sc_strcpy);
- SCRIPT_METHOD_EXT(StrFormat, ScPl_sc_sprintf);
- SCRIPT_METHOD_EXT(StrGetCharAt, StrGetCharAt);
- SCRIPT_METHOD_EXT(StringToInt, StringToInt);
- SCRIPT_METHOD_EXT(StrLen, strlen);
- SCRIPT_METHOD_EXT(StrSetCharAt, StrSetCharAt);
- SCRIPT_METHOD_EXT(StrToLowerCase, _sc_strlower);
- SCRIPT_METHOD_EXT(StrToUpperCase, _sc_strupper);
- SCRIPT_METHOD_EXT(TintScreen, TintScreen);
- SCRIPT_METHOD_EXT(UnPauseGame, UnPauseGame);
- SCRIPT_METHOD_EXT(UpdateInventory, update_invorder);
- SCRIPT_METHOD_EXT(UpdatePalette, UpdatePalette);
- SCRIPT_METHOD_EXT(Wait, scrWait);
- SCRIPT_METHOD_EXT(WaitKey, WaitKey);
- SCRIPT_METHOD_EXT(WaitMouseKey, WaitMouseKey);
- */
+ SCRIPT_METHOD(FileOpen, GlobalAPI::FileOpenCMode);
+ SCRIPT_METHOD(FileRead, GlobalAPI::FileRead);
+ SCRIPT_METHOD(FileReadInt, GlobalAPI::FileReadInt);
+ SCRIPT_METHOD(FileReadRawChar, GlobalAPI::FileReadRawChar);
+ SCRIPT_METHOD(FileReadRawInt, GlobalAPI::FileReadRawInt);
+ SCRIPT_METHOD(FileWrite, GlobalAPI::FileWrite);
+ SCRIPT_METHOD(FileWriteInt, GlobalAPI::FileWriteInt);
+ SCRIPT_METHOD(FileWriteRawChar, GlobalAPI::FileWriteRawChar);
+ SCRIPT_METHOD(FileWriteRawLine, GlobalAPI::FileWriteRawLine);
+ SCRIPT_METHOD(FindGUIID, GlobalAPI::FindGUIID);
+ SCRIPT_METHOD(FlipScreen, GlobalAPI::FlipScreen);
+ SCRIPT_METHOD(FloatToInt, GlobalAPI::FloatToInt);
+ SCRIPT_METHOD(FollowCharacter, GlobalAPI::FollowCharacter);
+ SCRIPT_METHOD(FollowCharacterEx, GlobalAPI::FollowCharacterEx);
+ SCRIPT_METHOD(GetBackgroundFrame, GlobalAPI::GetBackgroundFrame);
+ SCRIPT_METHOD(GetButtonPic, GlobalAPI::GetButtonPic);
+ SCRIPT_METHOD(GetCharacterAt, GlobalAPI::GetCharIDAtScreen);
+ SCRIPT_METHOD(GetCharacterProperty, GlobalAPI::GetCharacterProperty);
+ SCRIPT_METHOD(GetCharacterPropertyText, GlobalAPI::GetCharacterPropertyText);
+ SCRIPT_METHOD(GetCurrentMusic, GlobalAPI::GetCurrentMusic);
+ SCRIPT_METHOD(GetCursorMode, GlobalAPI::GetCursorMode);
+ SCRIPT_METHOD(GetDialogOption, GlobalAPI::GetDialogOption);
+ SCRIPT_METHOD(GetGameOption, GlobalAPI::GetGameOption);
+ SCRIPT_METHOD(GetGameParameter, GlobalAPI::GetGameParameter);
+ SCRIPT_METHOD(GetGameSpeed, GlobalAPI::GetGameSpeed);
+ SCRIPT_METHOD(GetGlobalInt, GlobalAPI::GetGlobalInt);
+ SCRIPT_METHOD(GetGlobalString, GlobalAPI::GetGlobalString);
+ SCRIPT_METHOD(GetGraphicalVariable, GlobalAPI::GetGraphicalVariable);
+ SCRIPT_METHOD(GetGUIAt, GlobalAPI::GetGUIAt);
+ SCRIPT_METHOD(GetGUIObjectAt, GlobalAPI::GetGUIObjectAt);
+ SCRIPT_METHOD(GetHotspotAt, GlobalAPI::GetHotspotIDAtScreen);
+ SCRIPT_METHOD(GetHotspotName, GlobalAPI::GetHotspotName);
+ SCRIPT_METHOD(GetHotspotPointX, GlobalAPI::GetHotspotPointX);
+ SCRIPT_METHOD(GetHotspotPointY, GlobalAPI::GetHotspotPointY);
+ SCRIPT_METHOD(GetHotspotProperty, GlobalAPI::GetHotspotProperty);
+ SCRIPT_METHOD(GetHotspotPropertyText, GlobalAPI::GetHotspotPropertyText);
+ SCRIPT_METHOD(GetInvAt, GlobalAPI::GetInvAt);
+ SCRIPT_METHOD(GetInvGraphic, GlobalAPI::GetInvGraphic);
+ SCRIPT_METHOD(GetInvName, GlobalAPI::GetInvName);
+ SCRIPT_METHOD(GetInvProperty, GlobalAPI::GetInvProperty);
+ SCRIPT_METHOD(GetInvPropertyText, GlobalAPI::GetInvPropertyText);
+ SCRIPT_METHOD(GetLocationName, GlobalAPI::GetLocationName);
+ SCRIPT_METHOD(GetLocationType, GlobalAPI::GetLocationType);
+ SCRIPT_METHOD(GetMessageText, GlobalAPI::GetMessageText);
+ SCRIPT_METHOD(GetMIDIPosition, GlobalAPI::GetMIDIPosition);
+ SCRIPT_METHOD(GetMP3PosMillis, GlobalAPI::GetMP3PosMillis);
+ SCRIPT_METHOD(GetObjectAt, GlobalAPI::GetObjectIDAtScreen);
+ SCRIPT_METHOD(GetObjectBaseline, GlobalAPI::GetObjectBaseline);
+ SCRIPT_METHOD(GetObjectGraphic, GlobalAPI::GetObjectGraphic);
+ SCRIPT_METHOD(GetObjectName, GlobalAPI::GetObjectName);
+ SCRIPT_METHOD(GetObjectProperty, GlobalAPI::GetObjectProperty);
+ SCRIPT_METHOD(GetObjectPropertyText, GlobalAPI::GetObjectPropertyText);
+ SCRIPT_METHOD(GetObjectX, GlobalAPI::GetObjectX);
+ SCRIPT_METHOD(GetObjectY, GlobalAPI::GetObjectY);
+ SCRIPT_METHOD(GetPlayerCharacter, GlobalAPI::GetPlayerCharacter);
+ SCRIPT_METHOD(GetRawTime, GlobalAPI::GetRawTime);
+ SCRIPT_METHOD(GetRegionAt, GlobalAPI::GetRegionIDAtRoom);
+ SCRIPT_METHOD(GetRoomProperty, GlobalAPI::Room_GetProperty);
+ SCRIPT_METHOD(GetRoomPropertyText, GlobalAPI::GetRoomPropertyText);
+ SCRIPT_METHOD(GetSaveSlotDescription, GlobalAPI::GetSaveSlotDescription);
+ SCRIPT_METHOD(GetScalingAt, GlobalAPI::GetScalingAt);
+ SCRIPT_METHOD(GetSliderValue, GlobalAPI::GetSliderValue);
+ SCRIPT_METHOD(GetTextBoxText, GlobalAPI::GetTextBoxText);
+ SCRIPT_METHOD(GetTextHeight, GlobalAPI::GetTextHeight);
+ SCRIPT_METHOD(GetTextWidth, GlobalAPI::GetTextWidth);
+ SCRIPT_METHOD(GetTime, GlobalAPI::sc_GetTime);
+ SCRIPT_METHOD(GetTranslation, GlobalAPI::get_translation);
+ SCRIPT_METHOD(GetTranslationName, GlobalAPI::GetTranslationName);
+ SCRIPT_METHOD(GetViewportX, GlobalAPI::GetViewportX);
+ SCRIPT_METHOD(GetViewportY, GlobalAPI::GetViewportY);
+ SCRIPT_METHOD(GetWalkableAreaAtRoom, GlobalAPI::GetWalkableAreaAtRoom);
+ SCRIPT_METHOD(GetWalkableAreaAt, GlobalAPI::GetWalkableAreaAtScreen);
+ SCRIPT_METHOD(GetWalkableAreaAtScreen, GlobalAPI::GetWalkableAreaAtScreen);
+ SCRIPT_METHOD(GiveScore, GlobalAPI::GiveScore);
+ SCRIPT_METHOD(HasPlayerBeenInRoom, GlobalAPI::HasPlayerBeenInRoom);
+ SCRIPT_METHOD(HideMouseCursor, GlobalAPI::HideMouseCursor);
+ SCRIPT_METHOD(InputBox, GlobalAPI::sc_inputbox);
+ SCRIPT_METHOD(InterfaceOff, GlobalAPI::InterfaceOff);
+ SCRIPT_METHOD(InterfaceOn, GlobalAPI::InterfaceOn);
+ SCRIPT_METHOD(IntToFloat, GlobalAPI::IntToFloat);
+ SCRIPT_METHOD(InventoryScreen, GlobalAPI::sc_invscreen);
+ SCRIPT_METHOD(IsButtonDown, GlobalAPI::IsButtonDown);
+ SCRIPT_METHOD(IsChannelPlaying, GlobalAPI::IsChannelPlaying);
+ SCRIPT_METHOD(IsGamePaused, GlobalAPI::IsGamePaused);
+ SCRIPT_METHOD(IsGUIOn, GlobalAPI::IsGUIOn);
+ SCRIPT_METHOD(IsInteractionAvailable, GlobalAPI::IsInteractionAvailable);
+ SCRIPT_METHOD(IsInventoryInteractionAvailable, GlobalAPI::IsInventoryInteractionAvailable);
+ SCRIPT_METHOD(IsInterfaceEnabled, GlobalAPI::IsInterfaceEnabled);
+ SCRIPT_METHOD(IsKeyPressed, GlobalAPI::IsKeyPressed);
+ SCRIPT_METHOD(IsMusicPlaying, GlobalAPI::IsMusicPlaying);
+ SCRIPT_METHOD(IsMusicVoxAvailable, GlobalAPI::IsMusicVoxAvailable);
+ SCRIPT_METHOD(IsObjectAnimating, GlobalAPI::IsObjectAnimating);
+ SCRIPT_METHOD(IsObjectMoving, GlobalAPI::IsObjectMoving);
+ SCRIPT_METHOD(IsObjectOn, GlobalAPI::IsObjectOn);
+ SCRIPT_METHOD(IsOverlayValid, GlobalAPI::IsOverlayValid);
+ SCRIPT_METHOD(IsSoundPlaying, GlobalAPI::IsSoundPlaying);
+ SCRIPT_METHOD(IsTimerExpired, GlobalAPI::IsTimerExpired);
+ SCRIPT_METHOD(IsTranslationAvailable, GlobalAPI::IsTranslationAvailable);
+ SCRIPT_METHOD(IsVoxAvailable, GlobalAPI::IsVoxAvailable);
+ SCRIPT_METHOD(ListBoxAdd, GlobalAPI::ListBoxAdd);
+ SCRIPT_METHOD(ListBoxClear, GlobalAPI::ListBoxClear);
+ SCRIPT_METHOD(ListBoxDirList, GlobalAPI::ListBoxDirList);
+ SCRIPT_METHOD(ListBoxGetItemText, GlobalAPI::ListBoxGetItemText);
+ SCRIPT_METHOD(ListBoxGetNumItems, GlobalAPI::ListBoxGetNumItems);
+ SCRIPT_METHOD(ListBoxGetSelected, GlobalAPI::ListBoxGetSelected);
+ SCRIPT_METHOD(ListBoxRemove, GlobalAPI::ListBoxRemove);
+ SCRIPT_METHOD(ListBoxSaveGameList, GlobalAPI::ListBoxSaveGameList);
+ SCRIPT_METHOD(ListBoxSetSelected, GlobalAPI::ListBoxSetSelected);
+ SCRIPT_METHOD(ListBoxSetTopItem, GlobalAPI::ListBoxSetTopItem);
+ SCRIPT_METHOD(LoadImageFile, GlobalAPI::LoadImageFile);
+ SCRIPT_METHOD(LoadSaveSlotScreenshot, GlobalAPI::LoadSaveSlotScreenshot);
+ SCRIPT_METHOD(LoseInventory, GlobalAPI::lose_inventory);
+ SCRIPT_METHOD(LoseInventoryFromCharacter, GlobalAPI::LoseInventoryFromCharacter);
+ SCRIPT_METHOD(MergeObject, GlobalAPI::MergeObject);
+ SCRIPT_METHOD(MoveCharacter, GlobalAPI::MoveCharacter);
+ SCRIPT_METHOD(MoveCharacterBlocking, GlobalAPI::MoveCharacterBlocking);
+ SCRIPT_METHOD(MoveCharacterDirect, GlobalAPI::MoveCharacterDirect);
+ SCRIPT_METHOD(MoveCharacterPath, GlobalAPI::MoveCharacterPath);
+ SCRIPT_METHOD(MoveCharacterStraight, GlobalAPI::MoveCharacterStraight);
+ SCRIPT_METHOD(MoveCharacterToHotspot, GlobalAPI::MoveCharacterToHotspot);
+ SCRIPT_METHOD(MoveCharacterToObject, GlobalAPI::MoveCharacterToObject);
+ SCRIPT_METHOD(MoveObject, GlobalAPI::MoveObject);
+ SCRIPT_METHOD(MoveObjectDirect, GlobalAPI::MoveObjectDirect);
+ SCRIPT_METHOD(MoveOverlay, GlobalAPI::MoveOverlay);
+ SCRIPT_METHOD(MoveToWalkableArea, GlobalAPI::MoveToWalkableArea);
+ SCRIPT_METHOD(NewRoom, GlobalAPI::NewRoom);
+ SCRIPT_METHOD(NewRoomEx, GlobalAPI::NewRoomEx);
+ SCRIPT_METHOD(NewRoomNPC, GlobalAPI::NewRoomNPC);
+ SCRIPT_METHOD(ObjectOff, GlobalAPI::ObjectOff);
+ SCRIPT_METHOD(ObjectOn, GlobalAPI::ObjectOn);
+ SCRIPT_METHOD(ParseText, GlobalAPI::ParseText);
+ SCRIPT_METHOD(PauseGame, GlobalAPI::PauseGame);
+ SCRIPT_METHOD(PlayAmbientSound, GlobalAPI::PlayAmbientSound);
+ SCRIPT_METHOD(PlayFlic, GlobalAPI::play_flc_file);
+ SCRIPT_METHOD(PlayMP3File, GlobalAPI::PlayMP3File);
+ SCRIPT_METHOD(PlayMusic, GlobalAPI::PlayMusicResetQueue);
+ SCRIPT_METHOD(PlayMusicQueued, GlobalAPI::PlayMusicQueued);
+ SCRIPT_METHOD(PlaySilentMIDI, GlobalAPI::PlaySilentMIDI);
+ SCRIPT_METHOD(PlaySound, GlobalAPI::play_sound);
+ SCRIPT_METHOD(PlaySoundEx, GlobalAPI::PlaySoundEx);
+ SCRIPT_METHOD(PlayVideo, GlobalAPI::scrPlayVideo);
+ SCRIPT_METHOD(ProcessClick, GlobalAPI::RoomProcessClick);
+ SCRIPT_METHOD(QuitGame, GlobalAPI::QuitGame);
+ SCRIPT_METHOD(Random, GlobalAPI::__Rand);
+ SCRIPT_METHOD(RawClearScreen, GlobalAPI::RawClear);
+ SCRIPT_METHOD(RawDrawCircle, GlobalAPI::RawDrawCircle);
+ SCRIPT_METHOD(RawDrawFrameTransparent, GlobalAPI::RawDrawFrameTransparent);
+ SCRIPT_METHOD(RawDrawImage, GlobalAPI::RawDrawImage);
+ SCRIPT_METHOD(RawDrawImageOffset, GlobalAPI::RawDrawImageOffset);
+ SCRIPT_METHOD(RawDrawImageResized, GlobalAPI::RawDrawImageResized);
+ SCRIPT_METHOD(RawDrawImageTransparent, GlobalAPI::RawDrawImageTransparent);
+ SCRIPT_METHOD(RawDrawLine, GlobalAPI::RawDrawLine);
+ SCRIPT_METHOD(RawDrawRectangle, GlobalAPI::RawDrawRectangle);
+ SCRIPT_METHOD(RawDrawTriangle, GlobalAPI::RawDrawTriangle);
+ SCRIPT_METHOD(RawPrint, GlobalAPI::ScPl_RawPrint);
+ SCRIPT_METHOD(RawPrintMessageWrapped, GlobalAPI::RawPrintMessageWrapped);
+ SCRIPT_METHOD(RawRestoreScreen, GlobalAPI::RawRestoreScreen);
+ SCRIPT_METHOD(RawRestoreScreenTinted, GlobalAPI::RawRestoreScreenTinted);
+ SCRIPT_METHOD(RawSaveScreen, GlobalAPI::RawSaveScreen);
+ SCRIPT_METHOD(RawSetColor, GlobalAPI::RawSetColor);
+ SCRIPT_METHOD(RawSetColorRGB, GlobalAPI::RawSetColorRGB);
+ SCRIPT_METHOD(RefreshMouse, GlobalAPI::RefreshMouse);
+ SCRIPT_METHOD(ReleaseCharacterView, GlobalAPI::ReleaseCharacterView);
+ SCRIPT_METHOD(ReleaseViewport, GlobalAPI::ReleaseViewport);
+ SCRIPT_METHOD(RemoveObjectTint, GlobalAPI::RemoveObjectTint);
+ SCRIPT_METHOD(RemoveOverlay, GlobalAPI::RemoveOverlay);
+ SCRIPT_METHOD(RemoveWalkableArea, GlobalAPI::RemoveWalkableArea);
+ SCRIPT_METHOD(ResetRoom, GlobalAPI::ResetRoom);
+ SCRIPT_METHOD(RestartGame, GlobalAPI::restart_game);
+ SCRIPT_METHOD(RestoreGameDialog, GlobalAPI::restore_game_dialog);
+ SCRIPT_METHOD(RestoreGameSlot, GlobalAPI::RestoreGameSlot);
+ SCRIPT_METHOD(RestoreWalkableArea, GlobalAPI::RestoreWalkableArea);
+ SCRIPT_METHOD(RunAGSGame, GlobalAPI::RunAGSGame);
+ SCRIPT_METHOD(RunCharacterInteraction, GlobalAPI::RunCharacterInteraction);
+ SCRIPT_METHOD(RunDialog, GlobalAPI::RunDialog);
+ SCRIPT_METHOD(RunHotspotInteraction, GlobalAPI::RunHotspotInteraction);
+ SCRIPT_METHOD(RunInventoryInteraction, GlobalAPI::RunInventoryInteraction);
+ SCRIPT_METHOD(RunObjectInteraction, GlobalAPI::RunObjectInteraction);
+ SCRIPT_METHOD(RunRegionInteraction, GlobalAPI::RunRegionInteraction);
+ SCRIPT_METHOD(Said, GlobalAPI::Said);
+ SCRIPT_METHOD(SaidUnknownWord, GlobalAPI::SaidUnknownWord);
+ SCRIPT_METHOD(SaveCursorForLocationChange, GlobalAPI::SaveCursorForLocationChange);
+ SCRIPT_METHOD(SaveGameDialog, GlobalAPI::save_game_dialog);
+ SCRIPT_METHOD(SaveGameSlot, GlobalAPI::save_game);
+ SCRIPT_METHOD(SaveScreenShot, GlobalAPI::SaveScreenShot);
+ SCRIPT_METHOD(SeekMIDIPosition, GlobalAPI::SeekMIDIPosition);
+ SCRIPT_METHOD(SeekMODPattern, GlobalAPI::SeekMODPattern);
+ SCRIPT_METHOD(SeekMP3PosMillis, GlobalAPI::SeekMP3PosMillis);
+ SCRIPT_METHOD(SetActiveInventory, GlobalAPI::SetActiveInventory);
+ SCRIPT_METHOD(SetAmbientTint, GlobalAPI::SetAmbientTint);
+ SCRIPT_METHOD(SetAreaLightLevel, GlobalAPI::SetAreaLightLevel);
+ SCRIPT_METHOD(SetAreaScaling, GlobalAPI::SetAreaScaling);
+ SCRIPT_METHOD(SetBackgroundFrame, GlobalAPI::SetBackgroundFrame);
+ SCRIPT_METHOD(SetButtonPic, GlobalAPI::SetButtonPic);
+ SCRIPT_METHOD(SetButtonText, GlobalAPI::SetButtonText);
+ SCRIPT_METHOD(SetChannelVolume, GlobalAPI::SetChannelVolume);
+ SCRIPT_METHOD(SetCharacterBaseline, GlobalAPI::SetCharacterBaseline);
+ SCRIPT_METHOD(SetCharacterClickable, GlobalAPI::SetCharacterClickable);
+ SCRIPT_METHOD(SetCharacterFrame, GlobalAPI::SetCharacterFrame);
+ SCRIPT_METHOD(SetCharacterIdle, GlobalAPI::SetCharacterIdle);
+ SCRIPT_METHOD(SetCharacterIgnoreLight, GlobalAPI::SetCharacterIgnoreLight);
+ SCRIPT_METHOD(SetCharacterIgnoreWalkbehinds, GlobalAPI::SetCharacterIgnoreWalkbehinds);
+ SCRIPT_METHOD(SetCharacterProperty, GlobalAPI::SetCharacterProperty);
+ SCRIPT_METHOD(SetCharacterBlinkView, GlobalAPI::SetCharacterBlinkView);
+ SCRIPT_METHOD(SetCharacterSpeechView, GlobalAPI::SetCharacterSpeechView);
+ SCRIPT_METHOD(SetCharacterSpeed, GlobalAPI::SetCharacterSpeed);
+ SCRIPT_METHOD(SetCharacterSpeedEx, GlobalAPI::SetCharacterSpeedEx);
+ SCRIPT_METHOD(SetCharacterTransparency, GlobalAPI::SetCharacterTransparency);
+ SCRIPT_METHOD(SetCharacterView, GlobalAPI::SetCharacterView);
+ SCRIPT_METHOD(SetCharacterViewEx, GlobalAPI::SetCharacterViewEx);
+ SCRIPT_METHOD(SetCharacterViewOffset, GlobalAPI::SetCharacterViewOffset);
+ SCRIPT_METHOD(SetCursorMode, GlobalAPI::set_cursor_mode);
+ SCRIPT_METHOD(SetDefaultCursor, GlobalAPI::set_default_cursor);
+ SCRIPT_METHOD(SetDialogOption, GlobalAPI::SetDialogOption);
+ SCRIPT_METHOD(SetDigitalMasterVolume, GlobalAPI::SetDigitalMasterVolume);
+ SCRIPT_METHOD(SetFadeColor, GlobalAPI::SetFadeColor);
+ SCRIPT_METHOD(SetFrameSound, GlobalAPI::SetFrameSound);
+ SCRIPT_METHOD(SetGameOption, GlobalAPI::SetGameOption);
+ SCRIPT_METHOD(SetGameSpeed, GlobalAPI::SetGameSpeed);
+ SCRIPT_METHOD(SetGlobalInt, GlobalAPI::SetGlobalInt);
+ SCRIPT_METHOD(SetGlobalString, GlobalAPI::SetGlobalString);
+ SCRIPT_METHOD(SetGraphicalVariable, GlobalAPI::SetGraphicalVariable);
+ SCRIPT_METHOD(SetGUIBackgroundPic, GlobalAPI::SetGUIBackgroundPic);
+ SCRIPT_METHOD(SetGUIClickable, GlobalAPI::SetGUIClickable);
+ SCRIPT_METHOD(SetGUIObjectEnabled, GlobalAPI::SetGUIObjectEnabled);
+ SCRIPT_METHOD(SetGUIObjectPosition, GlobalAPI::SetGUIObjectPosition);
+ SCRIPT_METHOD(SetGUIObjectSize, GlobalAPI::SetGUIObjectSize);
+ SCRIPT_METHOD(SetGUIPosition, GlobalAPI::SetGUIPosition);
+ SCRIPT_METHOD(SetGUISize, GlobalAPI::SetGUISize);
+ SCRIPT_METHOD(SetGUITransparency, GlobalAPI::SetGUITransparency);
+ SCRIPT_METHOD(SetGUIZOrder, GlobalAPI::SetGUIZOrder);
+ SCRIPT_METHOD(SetInvItemName, GlobalAPI::SetInvItemName);
+ SCRIPT_METHOD(SetInvItemPic, GlobalAPI::set_inv_item_pic);
+ SCRIPT_METHOD(SetInvDimensions, GlobalAPI::SetInvDimensions);
+ SCRIPT_METHOD(SetLabelColor, GlobalAPI::SetLabelColor);
+ SCRIPT_METHOD(SetLabelFont, GlobalAPI::SetLabelFont);
+ SCRIPT_METHOD(SetLabelText, GlobalAPI::SetLabelText);
+ SCRIPT_METHOD(SetMouseBounds, GlobalAPI::SetMouseBounds);
+ SCRIPT_METHOD(SetMouseCursor, GlobalAPI::set_mouse_cursor);
+ SCRIPT_METHOD(SetMousePosition, GlobalAPI::SetMousePosition);
+ SCRIPT_METHOD(SetMultitaskingMode, GlobalAPI::SetMultitasking);
+ SCRIPT_METHOD(SetMusicMasterVolume, GlobalAPI::SetMusicMasterVolume);
+ SCRIPT_METHOD(SetMusicRepeat, GlobalAPI::SetMusicRepeat);
+ SCRIPT_METHOD(SetMusicVolume, GlobalAPI::SetMusicVolume);
+ SCRIPT_METHOD(SetNextCursorMode, GlobalAPI::SetNextCursor);
+ SCRIPT_METHOD(SetNextScreenTransition, GlobalAPI::SetNextScreenTransition);
+ SCRIPT_METHOD(SetNormalFont, GlobalAPI::SetNormalFont);
+ SCRIPT_METHOD(SetObjectBaseline, GlobalAPI::SetObjectBaseline);
+ SCRIPT_METHOD(SetObjectClickable, GlobalAPI::SetObjectClickable);
+ SCRIPT_METHOD(SetObjectFrame, GlobalAPI::SetObjectFrame);
+ SCRIPT_METHOD(SetObjectGraphic, GlobalAPI::SetObjectGraphic);
+ SCRIPT_METHOD(SetObjectIgnoreWalkbehinds, GlobalAPI::SetObjectIgnoreWalkbehinds);
+ SCRIPT_METHOD(SetObjectPosition, GlobalAPI::SetObjectPosition);
+ SCRIPT_METHOD(SetObjectTint, GlobalAPI::SetObjectTint);
+ SCRIPT_METHOD(SetObjectTransparency, GlobalAPI::SetObjectTransparency);
+ SCRIPT_METHOD(SetObjectView, GlobalAPI::SetObjectView);
+ // SCRIPT_METHOD(SetPalette", GlobalAPI:: (void*)scSetPal);
+ SCRIPT_METHOD(SetPalRGB, GlobalAPI::SetPalRGB);
+ SCRIPT_METHOD(SetPlayerCharacter, GlobalAPI::SetPlayerCharacter);
+ SCRIPT_METHOD(SetRegionTint, GlobalAPI::SetRegionTint);
+ SCRIPT_METHOD(SetRestartPoint, GlobalAPI::SetRestartPoint);
+ SCRIPT_METHOD(SetScreenTransition, GlobalAPI::SetScreenTransition);
+ SCRIPT_METHOD(SetSkipSpeech, GlobalAPI::SetSkipSpeech);
+ SCRIPT_METHOD(SetSliderValue, GlobalAPI::SetSliderValue);
+ SCRIPT_METHOD(SetSoundVolume, GlobalAPI::SetSoundVolume);
+ SCRIPT_METHOD(SetSpeechFont, GlobalAPI::SetSpeechFont);
+ SCRIPT_METHOD(SetSpeechStyle, GlobalAPI::SetSpeechStyle);
+ SCRIPT_METHOD(SetSpeechVolume, GlobalAPI::SetSpeechVolume);
+ SCRIPT_METHOD(SetTalkingColor, GlobalAPI::SetTalkingColor);
+ SCRIPT_METHOD(SetTextBoxFont, GlobalAPI::SetTextBoxFont);
+ SCRIPT_METHOD(SetTextBoxText, GlobalAPI::SetTextBoxText);
+ SCRIPT_METHOD(SetTextOverlay, GlobalAPI::ScPl_SetTextOverlay);
+ SCRIPT_METHOD(SetTextWindowGUI, GlobalAPI::SetTextWindowGUI);
+ SCRIPT_METHOD(SetTimer, GlobalAPI::script_SetTimer);
+ SCRIPT_METHOD(SetViewport, GlobalAPI::SetViewport);
+ SCRIPT_METHOD(SetVoiceMode, GlobalAPI::SetVoiceMode);
+ SCRIPT_METHOD(SetWalkBehindBase, GlobalAPI::SetWalkBehindBase);
+ SCRIPT_METHOD(ShakeScreen, GlobalAPI::ShakeScreen);
+ SCRIPT_METHOD(ShakeScreenBackground, GlobalAPI::ShakeScreenBackground);
+ SCRIPT_METHOD(ShowMouseCursor, GlobalAPI::ShowMouseCursor);
+ SCRIPT_METHOD(SkipUntilCharacterStops, GlobalAPI::SkipUntilCharacterStops);
+ SCRIPT_METHOD(StartCutscene, GlobalAPI::StartCutscene);
+ SCRIPT_METHOD(StartRecording, GlobalAPI::scStartRecording);
+ SCRIPT_METHOD(StopAmbientSound, GlobalAPI::StopAmbientSound);
+ SCRIPT_METHOD(StopChannel, GlobalAPI::stop_and_destroy_channel);
+ SCRIPT_METHOD(StopDialog, GlobalAPI::StopDialog);
+ SCRIPT_METHOD(StopMoving, GlobalAPI::StopMoving);
+ SCRIPT_METHOD(StopMusic, GlobalAPI::scr_StopMusic);
+ SCRIPT_METHOD(StopObjectMoving, GlobalAPI::StopObjectMoving);
+ SCRIPT_METHOD(StrCat, GlobalAPI::_sc_strcat);
+ SCRIPT_METHOD(StrCaseComp, GlobalAPI::ags_stricmp);
+ SCRIPT_METHOD(StrComp, GlobalAPI::strcmp);
+ SCRIPT_METHOD(StrContains, GlobalAPI::StrContains);
+ SCRIPT_METHOD(StrCopy, GlobalAPI::_sc_strcpy);
+ SCRIPT_METHOD(StrFormat, GlobalAPI::ScPl_sc_sprintf);
+ SCRIPT_METHOD(StrGetCharAt, GlobalAPI::StrGetCharAt);
+ SCRIPT_METHOD(StringToInt, GlobalAPI::StringToInt);
+ SCRIPT_METHOD(StrLen, GlobalAPI::strlen);
+ SCRIPT_METHOD(StrSetCharAt, GlobalAPI::StrSetCharAt);
+ SCRIPT_METHOD(StrToLowerCase, GlobalAPI::_sc_strlower);
+ SCRIPT_METHOD(StrToUpperCase, GlobalAPI::_sc_strupper);
+ SCRIPT_METHOD(TintScreen, GlobalAPI::TintScreen);
+ SCRIPT_METHOD(UnPauseGame, GlobalAPI::UnPauseGame);
+ SCRIPT_METHOD(UpdateInventory, GlobalAPI::update_invorder);
+ SCRIPT_METHOD(UpdatePalette, GlobalAPI::UpdatePalette);
+ SCRIPT_METHOD(Wait, GlobalAPI::scrWait);
+ SCRIPT_METHOD(WaitKey, GlobalAPI::WaitKey);
+ SCRIPT_METHOD(WaitMouseKey, GlobalAPI::WaitMouseKey);
}
void GlobalAPI::ScPl_sc_AbortGame(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/gui.cpp b/engines/ags/plugins/core/gui.cpp
index c659f65c1e..932c222237 100644
--- a/engines/ags/plugins/core/gui.cpp
+++ b/engines/ags/plugins/core/gui.cpp
@@ -28,33 +28,31 @@ namespace Plugins {
namespace Core {
void GUI::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(GUI::Centre^0, Centre);
- SCRIPT_METHOD_EXT(GUI::GetAtScreenXY^2, GetGUIAtLocation);
- SCRIPT_METHOD_EXT(GUI::SetPosition^2, SetPosition);
- SCRIPT_METHOD_EXT(GUI::SetSize^2, SetSize);
- SCRIPT_METHOD_EXT(GUI::get_BackgroundGraphic, GetBackgroundGraphic);
- SCRIPT_METHOD_EXT(GUI::set_BackgroundGraphic, SetBackgroundGraphic);
- SCRIPT_METHOD_EXT(GUI::get_Clickable, GetClickable);
- SCRIPT_METHOD_EXT(GUI::set_Clickable, SetClickable);
- SCRIPT_METHOD_EXT(GUI::get_ControlCount, GetControlCount);
- SCRIPT_METHOD_EXT(GUI::geti_Controls, GetiControls);
- SCRIPT_METHOD_EXT(GUI::get_Height, GetHeight);
- SCRIPT_METHOD_EXT(GUI::set_Height, SetHeight);
- SCRIPT_METHOD_EXT(GUI::get_ID, GetID);
- SCRIPT_METHOD_EXT(GUI::get_Transparency, GetTransparency);
- SCRIPT_METHOD_EXT(GUI::set_Transparency, SetTransparency);
- SCRIPT_METHOD_EXT(GUI::get_Visible, GetVisible);
- SCRIPT_METHOD_EXT(GUI::set_Visible, SetVisible);
- SCRIPT_METHOD_EXT(GUI::get_Width, GetWidth);
- SCRIPT_METHOD_EXT(GUI::set_Width, SetWidth);
- SCRIPT_METHOD_EXT(GUI::get_X, GetX);
- SCRIPT_METHOD_EXT(GUI::set_X, SetX);
- SCRIPT_METHOD_EXT(GUI::get_Y, GetY);
- SCRIPT_METHOD_EXT(GUI::set_Y, SetY);
- SCRIPT_METHOD_EXT(GUI::get_ZOrder, GetZOrder);
- SCRIPT_METHOD_EXT(GUI::set_ZOrder, SetZOrder);
- */
+ SCRIPT_METHOD(GUI::Centre^0, GUI::Centre);
+ SCRIPT_METHOD(GUI::GetAtScreenXY^2, GUI::GetGUIAtLocation);
+ SCRIPT_METHOD(GUI::SetPosition^2, GUI::SetPosition);
+ SCRIPT_METHOD(GUI::SetSize^2, GUI::SetSize);
+ SCRIPT_METHOD(GUI::get_BackgroundGraphic, GUI::GetBackgroundGraphic);
+ SCRIPT_METHOD(GUI::set_BackgroundGraphic, GUI::SetBackgroundGraphic);
+ SCRIPT_METHOD(GUI::get_Clickable, GUI::GetClickable);
+ SCRIPT_METHOD(GUI::set_Clickable, GUI::SetClickable);
+ SCRIPT_METHOD(GUI::get_ControlCount, GUI::GetControlCount);
+ SCRIPT_METHOD(GUI::geti_Controls, GUI::GetiControls);
+ SCRIPT_METHOD(GUI::get_Height, GUI::GetHeight);
+ SCRIPT_METHOD(GUI::set_Height, GUI::SetHeight);
+ SCRIPT_METHOD(GUI::get_ID, GUI::GetID);
+ SCRIPT_METHOD(GUI::get_Transparency, GUI::GetTransparency);
+ SCRIPT_METHOD(GUI::set_Transparency, GUI::SetTransparency);
+ SCRIPT_METHOD(GUI::get_Visible, GUI::GetVisible);
+ SCRIPT_METHOD(GUI::set_Visible, GUI::SetVisible);
+ SCRIPT_METHOD(GUI::get_Width, GUI::GetWidth);
+ SCRIPT_METHOD(GUI::set_Width, GUI::SetWidth);
+ SCRIPT_METHOD(GUI::get_X, GUI::GetX);
+ SCRIPT_METHOD(GUI::set_X, GUI::SetX);
+ SCRIPT_METHOD(GUI::get_Y, GUI::GetY);
+ SCRIPT_METHOD(GUI::set_Y, GUI::SetY);
+ SCRIPT_METHOD(GUI::get_ZOrder, GUI::GetZOrder);
+ SCRIPT_METHOD(GUI::set_ZOrder, GUI::SetZOrder);
}
void GUI::Centre(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/gui_control.cpp b/engines/ags/plugins/core/gui_control.cpp
index e4da0fcc8a..898edf6ac8 100644
--- a/engines/ags/plugins/core/gui_control.cpp
+++ b/engines/ags/plugins/core/gui_control.cpp
@@ -28,35 +28,33 @@ namespace Plugins {
namespace Core {
void GUIControl::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(GUIControl::BringToFront^0, BringToFront);
- SCRIPT_METHOD_EXT(GUIControl::GetAtScreenXY^2, GetGUIControlAtLocation);
- SCRIPT_METHOD_EXT(GUIControl::SendToBack^0, SendToBack);
- SCRIPT_METHOD_EXT(GUIControl::SetPosition^2, SetPosition);
- SCRIPT_METHOD_EXT(GUIControl::SetSize^2, SetSize);
- SCRIPT_METHOD_EXT(GUIControl::get_AsButton, GetAsButton);
- SCRIPT_METHOD_EXT(GUIControl::get_AsInvWindow, GetAsInvWindow);
- SCRIPT_METHOD_EXT(GUIControl::get_AsLabel, GetAsLabel);
- SCRIPT_METHOD_EXT(GUIControl::get_AsListBox, GetAsListBox);
- SCRIPT_METHOD_EXT(GUIControl::get_AsSlider, GetAsSlider);
- SCRIPT_METHOD_EXT(GUIControl::get_AsTextBox, GetAsTextBox);
- SCRIPT_METHOD_EXT(GUIControl::get_Clickable, GetClickable);
- SCRIPT_METHOD_EXT(GUIControl::set_Clickable, SetClickable);
- SCRIPT_METHOD_EXT(GUIControl::get_Enabled, GetEnabled);
- SCRIPT_METHOD_EXT(GUIControl::set_Enabled, SetEnabled);
- SCRIPT_METHOD_EXT(GUIControl::get_Height, GetHeight);
- SCRIPT_METHOD_EXT(GUIControl::set_Height, SetHeight);
- SCRIPT_METHOD_EXT(GUIControl::get_ID, GetID);
- SCRIPT_METHOD_EXT(GUIControl::get_OwningGUI, GetOwningGUI);
- SCRIPT_METHOD_EXT(GUIControl::get_Visible, GetVisible);
- SCRIPT_METHOD_EXT(GUIControl::set_Visible, SetVisible);
- SCRIPT_METHOD_EXT(GUIControl::get_Width, GetWidth);
- SCRIPT_METHOD_EXT(GUIControl::set_Width, SetWidth);
- SCRIPT_METHOD_EXT(GUIControl::get_X, GetX);
- SCRIPT_METHOD_EXT(GUIControl::set_X, SetX);
- SCRIPT_METHOD_EXT(GUIControl::get_Y, GetY);
- SCRIPT_METHOD_EXT(GUIControl::set_Y, SetY);
- */
+ SCRIPT_METHOD(GUIControl::BringToFront^0, GUIControl::BringToFront);
+ SCRIPT_METHOD(GUIControl::GetAtScreenXY^2, GUIControl::GetGUIControlAtLocation);
+ SCRIPT_METHOD(GUIControl::SendToBack^0, GUIControl::SendToBack);
+ SCRIPT_METHOD(GUIControl::SetPosition^2, GUIControl::SetPosition);
+ SCRIPT_METHOD(GUIControl::SetSize^2, GUIControl::SetSize);
+ SCRIPT_METHOD(GUIControl::get_AsButton, GUIControl::GetAsButton);
+ SCRIPT_METHOD(GUIControl::get_AsInvWindow, GUIControl::GetAsInvWindow);
+ SCRIPT_METHOD(GUIControl::get_AsLabel, GUIControl::GetAsLabel);
+ SCRIPT_METHOD(GUIControl::get_AsListBox, GUIControl::GetAsListBox);
+ SCRIPT_METHOD(GUIControl::get_AsSlider, GUIControl::GetAsSlider);
+ SCRIPT_METHOD(GUIControl::get_AsTextBox, GUIControl::GetAsTextBox);
+ SCRIPT_METHOD(GUIControl::get_Clickable, GUIControl::GetClickable);
+ SCRIPT_METHOD(GUIControl::set_Clickable, GUIControl::SetClickable);
+ SCRIPT_METHOD(GUIControl::get_Enabled, GUIControl::GetEnabled);
+ SCRIPT_METHOD(GUIControl::set_Enabled, GUIControl::SetEnabled);
+ SCRIPT_METHOD(GUIControl::get_Height, GUIControl::GetHeight);
+ SCRIPT_METHOD(GUIControl::set_Height, GUIControl::SetHeight);
+ SCRIPT_METHOD(GUIControl::get_ID, GUIControl::GetID);
+ SCRIPT_METHOD(GUIControl::get_OwningGUI, GUIControl::GetOwningGUI);
+ SCRIPT_METHOD(GUIControl::get_Visible, GUIControl::GetVisible);
+ SCRIPT_METHOD(GUIControl::set_Visible, GUIControl::SetVisible);
+ SCRIPT_METHOD(GUIControl::get_Width, GUIControl::GetWidth);
+ SCRIPT_METHOD(GUIControl::set_Width, GUIControl::SetWidth);
+ SCRIPT_METHOD(GUIControl::get_X, GUIControl::GetX);
+ SCRIPT_METHOD(GUIControl::set_X, GUIControl::SetX);
+ SCRIPT_METHOD(GUIControl::get_Y, GUIControl::GetY);
+ SCRIPT_METHOD(GUIControl::set_Y, GUIControl::SetY);
}
void GUIControl::BringToFront(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/hotspot.cpp b/engines/ags/plugins/core/hotspot.cpp
index 05cdb9a916..d323e1e2bc 100644
--- a/engines/ags/plugins/core/hotspot.cpp
+++ b/engines/ags/plugins/core/hotspot.cpp
@@ -28,21 +28,19 @@ namespace Plugins {
namespace Core {
void Hotspot::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(Hotspot::GetAtRoomXY^2, GetHotspotAtRoom);
- SCRIPT_METHOD_EXT(Hotspot::GetAtScreenXY^2, GetHotspotAtScreen);
- SCRIPT_METHOD_EXT(Hotspot::GetName^1, GetName);
- SCRIPT_METHOD_EXT(Hotspot::GetProperty^1, GetProperty);
- SCRIPT_METHOD_EXT(Hotspot::GetPropertyText^2, GetPropertyText);
- SCRIPT_METHOD_EXT(Hotspot::GetTextProperty^1, GetTextProperty);
- SCRIPT_METHOD_EXT(Hotspot::RunInteraction^1, RunInteraction);
- SCRIPT_METHOD_EXT(Hotspot::get_Enabled, GetEnabled);
- SCRIPT_METHOD_EXT(Hotspot::set_Enabled, SetEnabled);
- SCRIPT_METHOD_EXT(Hotspot::get_ID, GetID);
- SCRIPT_METHOD_EXT(Hotspot::get_Name, GetName_New);
- SCRIPT_METHOD_EXT(Hotspot::get_WalkToX, GetWalkToX);
- SCRIPT_METHOD_EXT(Hotspot::get_WalkToY, GetWalkToY);
- */
+ SCRIPT_METHOD(Hotspot::GetAtRoomXY^2, Hotspot::GetHotspotAtRoom);
+ SCRIPT_METHOD(Hotspot::GetAtScreenXY^2, Hotspot::GetHotspotAtScreen);
+ SCRIPT_METHOD(Hotspot::GetName^1, Hotspot::GetName);
+ SCRIPT_METHOD(Hotspot::GetProperty^1, Hotspot::GetProperty);
+ SCRIPT_METHOD(Hotspot::GetPropertyText^2, Hotspot::GetPropertyText);
+ SCRIPT_METHOD(Hotspot::GetTextProperty^1, Hotspot::GetTextProperty);
+ SCRIPT_METHOD(Hotspot::RunInteraction^1, Hotspot::RunInteraction);
+ SCRIPT_METHOD(Hotspot::get_Enabled, Hotspot::GetEnabled);
+ SCRIPT_METHOD(Hotspot::set_Enabled, Hotspot::SetEnabled);
+ SCRIPT_METHOD(Hotspot::get_ID, Hotspot::GetID);
+ SCRIPT_METHOD(Hotspot::get_Name, Hotspot::GetName_New);
+ SCRIPT_METHOD(Hotspot::get_WalkToX, Hotspot::GetWalkToX);
+ SCRIPT_METHOD(Hotspot::get_WalkToY, Hotspot::GetWalkToY);
}
void Hotspot::GetHotspotAtRoom(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/inv_window.cpp b/engines/ags/plugins/core/inv_window.cpp
index 1a9b5c4c23..224e25ccab 100644
--- a/engines/ags/plugins/core/inv_window.cpp
+++ b/engines/ags/plugins/core/inv_window.cpp
@@ -28,22 +28,20 @@ namespace Plugins {
namespace Core {
void InvWindow::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(InvWindow::ScrollDown^0, ScrollDown);
- SCRIPT_METHOD_EXT(InvWindow::ScrollUp^0, ScrollUp);
- SCRIPT_METHOD_EXT(InvWindow::get_CharacterToUse, GetCharacterToUse);
- SCRIPT_METHOD_EXT(InvWindow::set_CharacterToUse, SetCharacterToUse);
- SCRIPT_METHOD_EXT(InvWindow::geti_ItemAtIndex, GetItemAtIndex);
- SCRIPT_METHOD_EXT(InvWindow::get_ItemCount, GetItemCount);
- SCRIPT_METHOD_EXT(InvWindow::get_ItemHeight, GetItemHeight);
- SCRIPT_METHOD_EXT(InvWindow::set_ItemHeight, SetItemHeight);
- SCRIPT_METHOD_EXT(InvWindow::get_ItemWidth, GetItemWidth);
- SCRIPT_METHOD_EXT(InvWindow::set_ItemWidth, SetItemWidth);
- SCRIPT_METHOD_EXT(InvWindow::get_ItemsPerRow, GetItemsPerRow);
- SCRIPT_METHOD_EXT(InvWindow::get_RowCount, GetRowCount);
- SCRIPT_METHOD_EXT(InvWindow::get_TopItem, GetTopItem);
- SCRIPT_METHOD_EXT(InvWindow::set_TopItem, SetTopItem);
- */
+ SCRIPT_METHOD(InvWindow::ScrollDown^0, InvWindow::ScrollDown);
+ SCRIPT_METHOD(InvWindow::ScrollUp^0, InvWindow::ScrollUp);
+ SCRIPT_METHOD(InvWindow::get_CharacterToUse, InvWindow::GetCharacterToUse);
+ SCRIPT_METHOD(InvWindow::set_CharacterToUse, InvWindow::SetCharacterToUse);
+ SCRIPT_METHOD(InvWindow::geti_ItemAtIndex, InvWindow::GetItemAtIndex);
+ SCRIPT_METHOD(InvWindow::get_ItemCount, InvWindow::GetItemCount);
+ SCRIPT_METHOD(InvWindow::get_ItemHeight, InvWindow::GetItemHeight);
+ SCRIPT_METHOD(InvWindow::set_ItemHeight, InvWindow::SetItemHeight);
+ SCRIPT_METHOD(InvWindow::get_ItemWidth, InvWindow::GetItemWidth);
+ SCRIPT_METHOD(InvWindow::set_ItemWidth, InvWindow::SetItemWidth);
+ SCRIPT_METHOD(InvWindow::get_ItemsPerRow, InvWindow::GetItemsPerRow);
+ SCRIPT_METHOD(InvWindow::get_RowCount, InvWindow::GetRowCount);
+ SCRIPT_METHOD(InvWindow::get_TopItem, InvWindow::GetTopItem);
+ SCRIPT_METHOD(InvWindow::set_TopItem, InvWindow::SetTopItem);
}
void InvWindow::ScrollDown(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/inventory_item.cpp b/engines/ags/plugins/core/inventory_item.cpp
index 1106f851fe..e0ee5511ed 100644
--- a/engines/ags/plugins/core/inventory_item.cpp
+++ b/engines/ags/plugins/core/inventory_item.cpp
@@ -28,23 +28,21 @@ namespace Plugins {
namespace Core {
void InventoryItem::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(InventoryItem::GetAtScreenXY ^ 2, GetInvAtLocation);
- SCRIPT_METHOD_EXT(InventoryItem::IsInteractionAvailable ^ 1, CheckInteractionAvailable);
- SCRIPT_METHOD_EXT(InventoryItem::GetName ^ 1, GetName);
- SCRIPT_METHOD_EXT(InventoryItem::GetProperty ^ 1, GetProperty);
- SCRIPT_METHOD_EXT(InventoryItem::GetPropertyText ^ 2, GetPropertyText);
- SCRIPT_METHOD_EXT(InventoryItem::GetTextProperty ^ 1, GetTextProperty);
- SCRIPT_METHOD_EXT(InventoryItem::RunInteraction ^ 1, RunInteraction);
- SCRIPT_METHOD_EXT(InventoryItem::SetName ^ 1, SetName);
- SCRIPT_METHOD_EXT(InventoryItem::get_CursorGraphic, GetCursorGraphic);
- SCRIPT_METHOD_EXT(InventoryItem::set_CursorGraphic, SetCursorGraphic);
- SCRIPT_METHOD_EXT(InventoryItem::get_Graphic, GetGraphic);
- SCRIPT_METHOD_EXT(InventoryItem::set_Graphic, SetGraphic);
- SCRIPT_METHOD_EXT(InventoryItem::get_ID, GetID);
- SCRIPT_METHOD_EXT(InventoryItem::get_Name, GetName_New);
- SCRIPT_METHOD_EXT(InventoryItem::set_Name, SetName);
- */
+ SCRIPT_METHOD(InventoryItem::GetAtScreenXY ^ 2, InventoryItem::GetInvAtLocation);
+ SCRIPT_METHOD(InventoryItem::IsInteractionAvailable ^ 1, InventoryItem::CheckInteractionAvailable);
+ SCRIPT_METHOD(InventoryItem::GetName ^ 1, InventoryItem::GetName);
+ SCRIPT_METHOD(InventoryItem::GetProperty ^ 1, InventoryItem::GetProperty);
+ SCRIPT_METHOD(InventoryItem::GetPropertyText ^ 2, InventoryItem::GetPropertyText);
+ SCRIPT_METHOD(InventoryItem::GetTextProperty ^ 1, InventoryItem::GetTextProperty);
+ SCRIPT_METHOD(InventoryItem::RunInteraction ^ 1, InventoryItem::RunInteraction);
+ SCRIPT_METHOD(InventoryItem::SetName ^ 1, InventoryItem::SetName);
+ SCRIPT_METHOD(InventoryItem::get_CursorGraphic, InventoryItem::GetCursorGraphic);
+ SCRIPT_METHOD(InventoryItem::set_CursorGraphic, InventoryItem::SetCursorGraphic);
+ SCRIPT_METHOD(InventoryItem::get_Graphic, InventoryItem::GetGraphic);
+ SCRIPT_METHOD(InventoryItem::set_Graphic, InventoryItem::SetGraphic);
+ SCRIPT_METHOD(InventoryItem::get_ID, InventoryItem::GetID);
+ SCRIPT_METHOD(InventoryItem::get_Name, InventoryItem::GetName_New);
+ SCRIPT_METHOD(InventoryItem::set_Name, InventoryItem::SetName);
}
void InventoryItem::GetInvAtLocation(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/label.cpp b/engines/ags/plugins/core/label.cpp
index 11f9f344e6..67e31c1242 100644
--- a/engines/ags/plugins/core/label.cpp
+++ b/engines/ags/plugins/core/label.cpp
@@ -28,16 +28,14 @@ namespace Plugins {
namespace Core {
void Label::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(Label::GetText^1, GetText);
- SCRIPT_METHOD_EXT(Label::SetText^1, SetText);
- SCRIPT_METHOD_EXT(Label::get_Font, GetFont);
- SCRIPT_METHOD_EXT(Label::set_Font, SetFont);
- SCRIPT_METHOD_EXT(Label::get_Text, GetText_New);
- SCRIPT_METHOD_EXT(Label::set_Text, SetText);
- SCRIPT_METHOD_EXT(Label::get_TextColor, GetColor);
- SCRIPT_METHOD_EXT(Label::set_TextColor, SetColor);
- */
+ SCRIPT_METHOD(Label::GetText^1, Label::GetText);
+ SCRIPT_METHOD(Label::SetText^1, Label::SetText);
+ SCRIPT_METHOD(Label::get_Font, Label::GetFont);
+ SCRIPT_METHOD(Label::set_Font, Label::SetFont);
+ SCRIPT_METHOD(Label::get_Text, Label::GetText_New);
+ SCRIPT_METHOD(Label::set_Text, Label::SetText);
+ SCRIPT_METHOD(Label::get_TextColor, Label::GetColor);
+ SCRIPT_METHOD(Label::set_TextColor, Label::SetColor);
}
void Label::GetText(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/listbox.cpp b/engines/ags/plugins/core/listbox.cpp
index 67dad5ab77..00eac66172 100644
--- a/engines/ags/plugins/core/listbox.cpp
+++ b/engines/ags/plugins/core/listbox.cpp
@@ -27,158 +27,156 @@ namespace AGS3 {
namespace Plugins {
namespace Core {
-void Listbox::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(ListBox::AddItem^1, AddItem);
- SCRIPT_METHOD_EXT(ListBox::Clear^0, Clear);
- SCRIPT_METHOD_EXT(ListBox::FillDirList^1, FillDirList);
- SCRIPT_METHOD_EXT(ListBox::FillSaveGameList^0, FillSaveGameList);
- SCRIPT_METHOD_EXT(ListBox::GetItemAtLocation^2, GetItemAtLocation);
- SCRIPT_METHOD_EXT(ListBox::GetItemText^2, GetItemText);
- SCRIPT_METHOD_EXT(ListBox::InsertItemAt^2, InsertItemAt);
- SCRIPT_METHOD_EXT(ListBox::RemoveItem^1, RemoveItem);
- SCRIPT_METHOD_EXT(ListBox::ScrollDown^0, ScrollDown);
- SCRIPT_METHOD_EXT(ListBox::ScrollUp^0, ScrollUp);
- SCRIPT_METHOD_EXT(ListBox::SetItemText^2, SetItemText);
- SCRIPT_METHOD_EXT(ListBox::get_Font, GetFont);
- SCRIPT_METHOD_EXT(ListBox::set_Font, SetFont);
- SCRIPT_METHOD_EXT(ListBox::get_HideBorder, GetHideBorder);
- SCRIPT_METHOD_EXT(ListBox::set_HideBorder, SetHideBorder);
- SCRIPT_METHOD_EXT(ListBox::get_HideScrollArrows, GetHideScrollArrows);
- SCRIPT_METHOD_EXT(ListBox::set_HideScrollArrows, SetHideScrollArrows);
- SCRIPT_METHOD_EXT(ListBox::get_ItemCount, GetItemCount);
- SCRIPT_METHOD_EXT(ListBox::geti_Items, GetItems);
- SCRIPT_METHOD_EXT(ListBox::seti_Items, SetItemText);
- SCRIPT_METHOD_EXT(ListBox::get_RowCount, GetRowCount);
- SCRIPT_METHOD_EXT(ListBox::geti_SaveGameSlots, GetSaveGameSlots);
- SCRIPT_METHOD_EXT(ListBox::get_SelectedIndex, GetSelectedIndex);
- SCRIPT_METHOD_EXT(ListBox::set_SelectedIndex, SetSelectedIndex);
- SCRIPT_METHOD_EXT(ListBox::get_TopItem, GetTopItem);
- SCRIPT_METHOD_EXT(ListBox::set_TopItem, SetTopItem);
- */
-}
-
-void Listbox::AddItem(ScriptMethodParams ¶ms) {
+void ListBox::AGS_EngineStartup(IAGSEngine *engine) {
+ SCRIPT_METHOD(ListBox::AddItem^1, ListBox::AddItem);
+ SCRIPT_METHOD(ListBox::Clear^0, ListBox::Clear);
+ SCRIPT_METHOD(ListBox::FillDirList^1, ListBox::FillDirList);
+ SCRIPT_METHOD(ListBox::FillSaveGameList^0, ListBox::FillSaveGameList);
+ SCRIPT_METHOD(ListBox::GetItemAtLocation^2, ListBox::GetItemAtLocation);
+ SCRIPT_METHOD(ListBox::GetItemText^2, ListBox::GetItemText);
+ SCRIPT_METHOD(ListBox::InsertItemAt^2, ListBox::InsertItemAt);
+ SCRIPT_METHOD(ListBox::RemoveItem^1, ListBox::RemoveItem);
+ SCRIPT_METHOD(ListBox::ScrollDown^0, ListBox::ScrollDown);
+ SCRIPT_METHOD(ListBox::ScrollUp^0, ListBox::ScrollUp);
+ SCRIPT_METHOD(ListBox::SetItemText^2, ListBox::SetItemText);
+ SCRIPT_METHOD(ListBox::get_Font, ListBox::GetFont);
+ SCRIPT_METHOD(ListBox::set_Font, ListBox::SetFont);
+ SCRIPT_METHOD(ListBox::get_HideBorder, ListBox::GetHideBorder);
+ SCRIPT_METHOD(ListBox::set_HideBorder, ListBox::SetHideBorder);
+ SCRIPT_METHOD(ListBox::get_HideScrollArrows, ListBox::GetHideScrollArrows);
+ SCRIPT_METHOD(ListBox::set_HideScrollArrows, ListBox::SetHideScrollArrows);
+ SCRIPT_METHOD(ListBox::get_ItemCount, ListBox::GetItemCount);
+ SCRIPT_METHOD(ListBox::geti_Items, ListBox::GetItems);
+ SCRIPT_METHOD(ListBox::seti_Items, ListBox::SetItemText);
+ SCRIPT_METHOD(ListBox::get_RowCount, ListBox::GetRowCount);
+ SCRIPT_METHOD(ListBox::geti_SaveGameSlots, ListBox::GetSaveGameSlots);
+ SCRIPT_METHOD(ListBox::get_SelectedIndex, ListBox::GetSelectedIndex);
+ SCRIPT_METHOD(ListBox::set_SelectedIndex, ListBox::SetSelectedIndex);
+ SCRIPT_METHOD(ListBox::get_TopItem, ListBox::GetTopItem);
+ SCRIPT_METHOD(ListBox::set_TopItem, ListBox::SetTopItem);
+}
+
+void ListBox::AddItem(ScriptMethodParams ¶ms) {
PARAMS2(GUIListBox *, lbb, const char *, text);
params._result = AGS3::ListBox_AddItem(lbb, text);
}
-void Listbox::Clear(ScriptMethodParams ¶ms) {
+void ListBox::Clear(ScriptMethodParams ¶ms) {
PARAMS1(GUIListBox *, listbox);
AGS3::ListBox_Clear(listbox);
}
-void Listbox::FillDirList(ScriptMethodParams ¶ms) {
+void ListBox::FillDirList(ScriptMethodParams ¶ms) {
PARAMS2(GUIListBox *, listbox, const char *, filemask);
AGS3::ListBox_FillDirList(listbox, filemask);
}
-void Listbox::FillSaveGameList(ScriptMethodParams ¶ms) {
+void ListBox::FillSaveGameList(ScriptMethodParams ¶ms) {
PARAMS1(GUIListBox *, listbox);
params._result = AGS3::ListBox_FillSaveGameList(listbox);
}
-void Listbox::GetItemAtLocation(ScriptMethodParams ¶ms) {
+void ListBox::GetItemAtLocation(ScriptMethodParams ¶ms) {
PARAMS3(GUIListBox *, listbox, int, x, int, y);
params._result = AGS3::ListBox_GetItemAtLocation(listbox, x, y);
}
-void Listbox::GetItemText(ScriptMethodParams ¶ms) {
+void ListBox::GetItemText(ScriptMethodParams ¶ms) {
PARAMS3(GUIListBox *, listbox, int, index, char *, buffer);
params._result = AGS3::ListBox_GetItemText(listbox, index, buffer);
}
-void Listbox::InsertItemAt(ScriptMethodParams ¶ms) {
+void ListBox::InsertItemAt(ScriptMethodParams ¶ms) {
PARAMS3(GUIListBox *, lbb, int, index, const char *, text);
params._result = AGS3::ListBox_InsertItemAt(lbb, index, text);
}
-void Listbox::RemoveItem(ScriptMethodParams ¶ms) {
+void ListBox::RemoveItem(ScriptMethodParams ¶ms) {
PARAMS2(GUIListBox *, listbox, int, itemIndex);
AGS3::ListBox_RemoveItem(listbox, itemIndex);
}
-void Listbox::ScrollDown(ScriptMethodParams ¶ms) {
+void ListBox::ScrollDown(ScriptMethodParams ¶ms) {
PARAMS1(GUIListBox *, listbox);
AGS3::ListBox_ScrollDown(listbox);
}
-void Listbox::ScrollUp(ScriptMethodParams ¶ms) {
+void ListBox::ScrollUp(ScriptMethodParams ¶ms) {
PARAMS1(GUIListBox *, listbox);
AGS3::ListBox_ScrollUp(listbox);
}
-void Listbox::SetItemText(ScriptMethodParams ¶ms) {
+void ListBox::SetItemText(ScriptMethodParams ¶ms) {
PARAMS3(GUIListBox *, listbox, int, index, const char *, newtext);
AGS3::ListBox_SetItemText(listbox, index, newtext);
}
-void Listbox::GetFont(ScriptMethodParams ¶ms) {
+void ListBox::GetFont(ScriptMethodParams ¶ms) {
PARAMS1(GUIListBox *, listbox);
params._result = AGS3::ListBox_GetFont(listbox);
}
-void Listbox::SetFont(ScriptMethodParams ¶ms) {
+void ListBox::SetFont(ScriptMethodParams ¶ms) {
PARAMS2(GUIListBox *, listbox, int, newfont);
AGS3::ListBox_SetFont(listbox, newfont);
}
-void Listbox::GetHideBorder(ScriptMethodParams ¶ms) {
+void ListBox::GetHideBorder(ScriptMethodParams ¶ms) {
PARAMS1(GUIListBox *, listbox);
params._result = AGS3::ListBox_GetHideBorder(listbox);
}
-void Listbox::SetHideBorder(ScriptMethodParams ¶ms) {
+void ListBox::SetHideBorder(ScriptMethodParams ¶ms) {
PARAMS2(GUIListBox *, listbox, int, newValue);
AGS3::ListBox_SetHideBorder(listbox, newValue);
}
-void Listbox::GetHideScrollArrows(ScriptMethodParams ¶ms) {
+void ListBox::GetHideScrollArrows(ScriptMethodParams ¶ms) {
PARAMS1(GUIListBox *, listbox);
params._result = AGS3::ListBox_GetHideScrollArrows(listbox);
}
-void Listbox::SetHideScrollArrows(ScriptMethodParams ¶ms) {
+void ListBox::SetHideScrollArrows(ScriptMethodParams ¶ms) {
PARAMS2(GUIListBox *, listbox, int, newValue);
AGS3::ListBox_SetHideScrollArrows(listbox, newValue);
}
-void Listbox::GetItemCount(ScriptMethodParams ¶ms) {
+void ListBox::GetItemCount(ScriptMethodParams ¶ms) {
PARAMS1(GUIListBox *, listbox);
params._result = AGS3::ListBox_GetItemCount(listbox);
}
-void Listbox::GetItems(ScriptMethodParams ¶ms) {
+void ListBox::GetItems(ScriptMethodParams ¶ms) {
PARAMS2(GUIListBox *, listbox, int, index);
params._result = AGS3::ListBox_GetItems(listbox, index);
}
-void Listbox::GetRowCount(ScriptMethodParams ¶ms) {
+void ListBox::GetRowCount(ScriptMethodParams ¶ms) {
PARAMS1(GUIListBox *, listbox);
params._result = AGS3::ListBox_GetRowCount(listbox);
}
-void Listbox::GetSaveGameSlots(ScriptMethodParams ¶ms) {
+void ListBox::GetSaveGameSlots(ScriptMethodParams ¶ms) {
PARAMS2(GUIListBox *, listbox, int, index);
params._result = AGS3::ListBox_GetSaveGameSlots(listbox, index);
}
-void Listbox::GetSelectedIndex(ScriptMethodParams ¶ms) {
+void ListBox::GetSelectedIndex(ScriptMethodParams ¶ms) {
PARAMS1(GUIListBox *, listbox);
params._result = AGS3::ListBox_GetSelectedIndex(listbox);
}
-void Listbox::SetSelectedIndex(ScriptMethodParams ¶ms) {
+void ListBox::SetSelectedIndex(ScriptMethodParams ¶ms) {
PARAMS2(GUIListBox *, guisl, int, newsel);
AGS3::ListBox_SetSelectedIndex(guisl, newsel);
}
-void Listbox::GetTopItem(ScriptMethodParams ¶ms) {
+void ListBox::GetTopItem(ScriptMethodParams ¶ms) {
PARAMS1(GUIListBox *, listbox);
params._result = AGS3::ListBox_GetTopItem(listbox);
}
-void Listbox::SetTopItem(ScriptMethodParams ¶ms) {
+void ListBox::SetTopItem(ScriptMethodParams ¶ms) {
PARAMS2(GUIListBox *, guisl, int, item);
AGS3::ListBox_SetTopItem(guisl, item);
}
diff --git a/engines/ags/plugins/core/listbox.h b/engines/ags/plugins/core/listbox.h
index 1c78d9a597..fe79c6b2b1 100644
--- a/engines/ags/plugins/core/listbox.h
+++ b/engines/ags/plugins/core/listbox.h
@@ -29,10 +29,10 @@ namespace AGS3 {
namespace Plugins {
namespace Core {
-class Listbox : public ScriptContainer {
- SCRIPT_HASH(Listbox)
+class ListBox : public ScriptContainer {
+ SCRIPT_HASH(ListBox)
public:
- virtual ~Listbox() {}
+ virtual ~ListBox() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
void AddItem(ScriptMethodParams ¶ms);
diff --git a/engines/ags/plugins/core/math.cpp b/engines/ags/plugins/core/maths.cpp
similarity index 56%
rename from engines/ags/plugins/core/math.cpp
rename to engines/ags/plugins/core/maths.cpp
index 1a324b13f2..2c1d594662 100644
--- a/engines/ags/plugins/core/math.cpp
+++ b/engines/ags/plugins/core/maths.cpp
@@ -20,122 +20,120 @@
*
*/
-#include "ags/plugins/core/math.h"
+#include "ags/plugins/core/maths.h"
#include "ags/engine/ac/math.h"
namespace AGS3 {
namespace Plugins {
namespace Core {
-void Math::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(Maths::ArcCos^1, ArcCos);
- SCRIPT_METHOD_EXT(Maths::ArcSin^1, ArcSin);
- SCRIPT_METHOD_EXT(Maths::ArcTan^1, ArcTan);
- SCRIPT_METHOD_EXT(Maths::ArcTan2^2, ArcTan2);
- SCRIPT_METHOD_EXT(Maths::Cos^1, Cos);
- SCRIPT_METHOD_EXT(Maths::Cosh^1, Cosh);
- SCRIPT_METHOD_EXT(Maths::DegreesToRadians^1, DegreesToRadians);
- SCRIPT_METHOD_EXT(Maths::Exp^1, Exp);
- SCRIPT_METHOD_EXT(Maths::Log^1, Log);
- SCRIPT_METHOD_EXT(Maths::Log10^1, Log10);
- SCRIPT_METHOD_EXT(Maths::RadiansToDegrees^1, RadiansToDegrees);
- SCRIPT_METHOD_EXT(Maths::RaiseToPower^2, RaiseToPower);
- SCRIPT_METHOD_EXT(Maths::Sin^1, Sin);
- SCRIPT_METHOD_EXT(Maths::Sinh^1, Sinh);
- SCRIPT_METHOD_EXT(Maths::Sqrt^1, Sqrt);
- SCRIPT_METHOD_EXT(Maths::Tan^1, Tan);
- SCRIPT_METHOD_EXT(Maths::Tanh^1, Tanh);
- SCRIPT_METHOD_EXT(Maths::get_Pi, GetPi);
- */
-}
-
-void Math::ArcCos(ScriptMethodParams ¶ms) {
+void Maths::AGS_EngineStartup(IAGSEngine *engine) {
+ SCRIPT_METHOD(Maths::ArcCos^1, Maths::ArcCos);
+ SCRIPT_METHOD(Maths::ArcSin^1, Maths::ArcSin);
+ SCRIPT_METHOD(Maths::ArcTan^1, Maths::ArcTan);
+ SCRIPT_METHOD(Maths::ArcTan2^2, Maths::ArcTan2);
+ SCRIPT_METHOD(Maths::Cos^1, Maths::Cos);
+ SCRIPT_METHOD(Maths::Cosh^1, Maths::Cosh);
+ SCRIPT_METHOD(Maths::DegreesToRadians^1, Maths::DegreesToRadians);
+ SCRIPT_METHOD(Maths::Exp^1, Maths::Exp);
+ SCRIPT_METHOD(Maths::Log^1, Maths::Log);
+ SCRIPT_METHOD(Maths::Log10^1, Maths::Log10);
+ SCRIPT_METHOD(Maths::RadiansToDegrees^1, Maths::RadiansToDegrees);
+ SCRIPT_METHOD(Maths::RaiseToPower^2, Maths::RaiseToPower);
+ SCRIPT_METHOD(Maths::Sin^1, Maths::Sin);
+ SCRIPT_METHOD(Maths::Sinh^1, Maths::Sinh);
+ SCRIPT_METHOD(Maths::Sqrt^1, Maths::Sqrt);
+ SCRIPT_METHOD(Maths::Tan^1, Maths::Tan);
+ SCRIPT_METHOD(Maths::Tanh^1, Maths::Tanh);
+ SCRIPT_METHOD(Maths::get_Pi, Maths::GetPi);
+}
+
+void Maths::ArcCos(ScriptMethodParams ¶ms) {
PARAMS1(float, value);
params._result = AGS3::Math_ArcCos(value);
}
-void Math::ArcSin(ScriptMethodParams ¶ms) {
+void Maths::ArcSin(ScriptMethodParams ¶ms) {
PARAMS1(float, value);
params._result = AGS3::Math_ArcSin(value);
}
-void Math::ArcTan(ScriptMethodParams ¶ms) {
+void Maths::ArcTan(ScriptMethodParams ¶ms) {
PARAMS1(float, value);
params._result = AGS3::Math_ArcTan(value);
}
-void Math::ArcTan2(ScriptMethodParams ¶ms) {
+void Maths::ArcTan2(ScriptMethodParams ¶ms) {
PARAMS2(float, yval, float, xval);
params._result = AGS3::Math_ArcTan2(xval, yval);
}
-void Math::Cos(ScriptMethodParams ¶ms) {
+void Maths::Cos(ScriptMethodParams ¶ms) {
PARAMS1(float, value);
params._result = AGS3::Math_Cos(value);
}
-void Math::Cosh(ScriptMethodParams ¶ms) {
+void Maths::Cosh(ScriptMethodParams ¶ms) {
PARAMS1(float, value);
params._result = AGS3::Math_Cosh(value);
}
-void Math::DegreesToRadians(ScriptMethodParams ¶ms) {
+void Maths::DegreesToRadians(ScriptMethodParams ¶ms) {
PARAMS1(float, value);
params._result = AGS3::Math_DegreesToRadians(value);
}
-void Math::Exp(ScriptMethodParams ¶ms) {
+void Maths::Exp(ScriptMethodParams ¶ms) {
PARAMS1(float, value);
params._result = AGS3::Math_Exp(value);
}
-void Math::Log(ScriptMethodParams ¶ms) {
+void Maths::Log(ScriptMethodParams ¶ms) {
PARAMS1(float, value);
params._result = AGS3::Math_Log(value);
}
-void Math::Log10(ScriptMethodParams ¶ms) {
+void Maths::Log10(ScriptMethodParams ¶ms) {
PARAMS1(float, value);
params._result = AGS3::Math_Log10(value);
}
-void Math::RadiansToDegrees(ScriptMethodParams ¶ms) {
+void Maths::RadiansToDegrees(ScriptMethodParams ¶ms) {
PARAMS1(float, value);
params._result = AGS3::Math_RadiansToDegrees(value);
}
-void Math::RaiseToPower(ScriptMethodParams ¶ms) {
+void Maths::RaiseToPower(ScriptMethodParams ¶ms) {
PARAMS2(float, base, float, exp);
params._result = AGS3::Math_RaiseToPower(base, exp);
}
-void Math::Sin(ScriptMethodParams ¶ms) {
+void Maths::Sin(ScriptMethodParams ¶ms) {
PARAMS1(float, value);
params._result = AGS3::Math_Sin(value);
}
-void Math::Sinh(ScriptMethodParams ¶ms) {
+void Maths::Sinh(ScriptMethodParams ¶ms) {
PARAMS1(float, value);
params._result = AGS3::Math_Sinh(value);
}
-void Math::Sqrt(ScriptMethodParams ¶ms) {
+void Maths::Sqrt(ScriptMethodParams ¶ms) {
PARAMS1(float, value);
params._result = AGS3::Math_Sqrt(value);
}
-void Math::Tan(ScriptMethodParams ¶ms) {
+void Maths::Tan(ScriptMethodParams ¶ms) {
PARAMS1(float, value);
params._result = AGS3::Math_Tan(value);
}
-void Math::Tanh(ScriptMethodParams ¶ms) {
+void Maths::Tanh(ScriptMethodParams ¶ms) {
PARAMS1(float, value);
params._result = AGS3::Math_Tanh(value);
}
-void Math::GetPi(ScriptMethodParams ¶ms) {
+void Maths::GetPi(ScriptMethodParams ¶ms) {
params._result = AGS3::Math_GetPi();
}
diff --git a/engines/ags/plugins/core/math.h b/engines/ags/plugins/core/maths.h
similarity index 96%
rename from engines/ags/plugins/core/math.h
rename to engines/ags/plugins/core/maths.h
index e22a954942..5d345d5241 100644
--- a/engines/ags/plugins/core/math.h
+++ b/engines/ags/plugins/core/maths.h
@@ -29,10 +29,10 @@ namespace AGS3 {
namespace Plugins {
namespace Core {
-class Math : public ScriptContainer {
- SCRIPT_HASH(Math)
+class Maths : public ScriptContainer {
+ SCRIPT_HASH(Maths)
public:
- virtual ~Math() {}
+ virtual ~Maths() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
void ArcCos(ScriptMethodParams ¶ms);
diff --git a/engines/ags/plugins/core/mouse.cpp b/engines/ags/plugins/core/mouse.cpp
index 72aab6fd54..3fcdd4c5de 100644
--- a/engines/ags/plugins/core/mouse.cpp
+++ b/engines/ags/plugins/core/mouse.cpp
@@ -29,28 +29,26 @@ namespace Plugins {
namespace Core {
void Mouse::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(Mouse::ChangeModeGraphic^2, ChangeCursorGraphic);
- SCRIPT_METHOD_EXT(Mouse::ChangeModeHotspot^3, ChangeCursorHotspot);
- SCRIPT_METHOD_EXT(Mouse::ChangeModeView^2, Mouse_ChangeModeView);
- SCRIPT_METHOD_EXT(Mouse::DisableMode^1, disable_cursor_mode);
- SCRIPT_METHOD_EXT(Mouse::EnableMode^1, enable_cursor_mode);
- SCRIPT_METHOD_EXT(Mouse::GetModeGraphic^1, Mouse_GetModeGraphic);
- SCRIPT_METHOD_EXT(Mouse::IsButtonDown^1, IsButtonDown);
- SCRIPT_METHOD_EXT(Mouse::IsModeEnabled^1, IsModeEnabled);
- SCRIPT_METHOD_EXT(Mouse::SaveCursorUntilItLeaves^0, SaveCursorForLocationChange);
- SCRIPT_METHOD_EXT(Mouse::SelectNextMode^0, SetNextCursor);
- SCRIPT_METHOD_EXT(Mouse::SelectPreviousMode^0, SetPreviousCursor);
- SCRIPT_METHOD_EXT(Mouse::SetBounds^4, SetMouseBounds);
- SCRIPT_METHOD_EXT(Mouse::SetPosition^2, SetMousePosition);
- SCRIPT_METHOD_EXT(Mouse::Update^0, RefreshMouse);
- SCRIPT_METHOD_EXT(Mouse::UseDefaultGraphic^0, set_default_cursor);
- SCRIPT_METHOD_EXT(Mouse::UseModeGraphic^1, set_mouse_cursor);
- SCRIPT_METHOD_EXT(Mouse::get_Mode, GetCursorMode);
- SCRIPT_METHOD_EXT(Mouse::set_Mode, set_cursor_mode);
- SCRIPT_METHOD_EXT(Mouse::get_Visible, Mouse_GetVisible);
- SCRIPT_METHOD_EXT(Mouse::set_Visible, Mouse_SetVisible);
- */
+ SCRIPT_METHOD(Mouse::ChangeModeGraphic^2, Mouse::ChangeCursorGraphic);
+ SCRIPT_METHOD(Mouse::ChangeModeHotspot^3, Mouse::ChangeCursorHotspot);
+ SCRIPT_METHOD(Mouse::ChangeModeView^2, Mouse::Mouse_ChangeModeView);
+ SCRIPT_METHOD(Mouse::DisableMode^1, Mouse::disable_cursor_mode);
+ SCRIPT_METHOD(Mouse::EnableMode^1, Mouse::enable_cursor_mode);
+ SCRIPT_METHOD(Mouse::GetModeGraphic^1, Mouse::Mouse_GetModeGraphic);
+ SCRIPT_METHOD(Mouse::IsButtonDown^1, Mouse::IsButtonDown);
+ SCRIPT_METHOD(Mouse::IsModeEnabled^1, Mouse::IsModeEnabled);
+ SCRIPT_METHOD(Mouse::SaveCursorUntilItLeaves^0, Mouse::SaveCursorForLocationChange);
+ SCRIPT_METHOD(Mouse::SelectNextMode^0, Mouse::SetNextCursor);
+ SCRIPT_METHOD(Mouse::SelectPreviousMode^0, Mouse::SetPreviousCursor);
+ SCRIPT_METHOD(Mouse::SetBounds^4, Mouse::SetMouseBounds);
+ SCRIPT_METHOD(Mouse::SetPosition^2, Mouse::SetMousePosition);
+ SCRIPT_METHOD(Mouse::Update^0, Mouse::RefreshMouse);
+ SCRIPT_METHOD(Mouse::UseDefaultGraphic^0, Mouse::set_default_cursor);
+ SCRIPT_METHOD(Mouse::UseModeGraphic^1, Mouse::set_mouse_cursor);
+ SCRIPT_METHOD(Mouse::get_Mode, Mouse::GetCursorMode);
+ SCRIPT_METHOD(Mouse::set_Mode, Mouse::set_cursor_mode);
+ SCRIPT_METHOD(Mouse::get_Visible, Mouse::Mouse_GetVisible);
+ SCRIPT_METHOD(Mouse::set_Visible, Mouse::Mouse_SetVisible);
}
void Mouse::ChangeCursorGraphic(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/object.cpp b/engines/ags/plugins/core/object.cpp
index 95a4ff76b1..3c85c0e95e 100644
--- a/engines/ags/plugins/core/object.cpp
+++ b/engines/ags/plugins/core/object.cpp
@@ -28,56 +28,54 @@ namespace Plugins {
namespace Core {
void Object::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(Object::Animate^5, Animate);
- SCRIPT_METHOD_EXT(Object::IsCollidingWithObject^1, IsCollidingWithObject);
- SCRIPT_METHOD_EXT(Object::GetName^1, GetName);
- SCRIPT_METHOD_EXT(Object::GetProperty^1, GetProperty);
- SCRIPT_METHOD_EXT(Object::GetPropertyText^2, GetPropertyText);
- SCRIPT_METHOD_EXT(Object::GetTextProperty^1, GetTextProperty);
- SCRIPT_METHOD_EXT(Object::MergeIntoBackground^0, MergeIntoBackground);
- SCRIPT_METHOD_EXT(Object::Move^5, Move);
- SCRIPT_METHOD_EXT(Object::RemoveTint^0, RemoveTint);
- SCRIPT_METHOD_EXT(Object::RunInteraction^1, RunInteraction);
- SCRIPT_METHOD_EXT(Object::SetPosition^2, SetPosition);
- SCRIPT_METHOD_EXT(Object::SetView^3, SetView);
- SCRIPT_METHOD_EXT(Object::StopAnimating^0, StopAnimating);
- SCRIPT_METHOD_EXT(Object::StopMoving^0, StopMoving);
- SCRIPT_METHOD_EXT(Object::Tint^5, Tint);
- SCRIPT_METHOD_EXT(Object::GetAtRoomXY^2, GetObjectAtRoom);
- SCRIPT_METHOD_EXT(Object::GetAtScreenXY^2, GetObjectAtScreen);
- SCRIPT_METHOD_EXT(Object::get_Animating, GetAnimating);
- SCRIPT_METHOD_EXT(Object::get_Baseline, GetBaseline);
- SCRIPT_METHOD_EXT(Object::set_Baseline, SetBaseline);
- SCRIPT_METHOD_EXT(Object::get_BlockingHeight, GetBlockingHeight);
- SCRIPT_METHOD_EXT(Object::set_BlockingHeight, SetBlockingHeight);
- SCRIPT_METHOD_EXT(Object::get_BlockingWidth, GetBlockingWidth);
- SCRIPT_METHOD_EXT(Object::set_BlockingWidth, SetBlockingWidth);
- SCRIPT_METHOD_EXT(Object::get_Clickable, GetClickable);
- SCRIPT_METHOD_EXT(Object::set_Clickable, SetClickable);
- SCRIPT_METHOD_EXT(Object::get_Frame, GetFrame);
- SCRIPT_METHOD_EXT(Object::get_Graphic, GetGraphic);
- SCRIPT_METHOD_EXT(Object::set_Graphic, SetGraphic);
- SCRIPT_METHOD_EXT(Object::get_ID, GetID);
- SCRIPT_METHOD_EXT(Object::get_IgnoreScaling, GetIgnoreScaling);
- SCRIPT_METHOD_EXT(Object::set_IgnoreScaling, SetIgnoreScaling);
- SCRIPT_METHOD_EXT(Object::get_IgnoreWalkbehinds, GetIgnoreWalkbehinds);
- SCRIPT_METHOD_EXT(Object::set_IgnoreWalkbehinds, SetIgnoreWalkbehinds);
- SCRIPT_METHOD_EXT(Object::get_Loop, GetLoop);
- SCRIPT_METHOD_EXT(Object::get_Moving, GetMoving);
- SCRIPT_METHOD_EXT(Object::get_Name, GetName_New);
- SCRIPT_METHOD_EXT(Object::get_Solid, GetSolid);
- SCRIPT_METHOD_EXT(Object::set_Solid, SetSolid);
- SCRIPT_METHOD_EXT(Object::get_Transparency, GetTransparency);
- SCRIPT_METHOD_EXT(Object::set_Transparency, SetTransparency);
- SCRIPT_METHOD_EXT(Object::get_View, GetView);
- SCRIPT_METHOD_EXT(Object::get_Visible, GetVisible);
- SCRIPT_METHOD_EXT(Object::set_Visible, SetVisible);
- SCRIPT_METHOD_EXT(Object::get_X, GetX);
- SCRIPT_METHOD_EXT(Object::set_X, SetX);
- SCRIPT_METHOD_EXT(Object::get_Y, GetY);
- SCRIPT_METHOD_EXT(Object::set_Y, SetY);
- */
+ SCRIPT_METHOD(Object::Animate^5, Object::Animate);
+ SCRIPT_METHOD(Object::IsCollidingWithObject^1, Object::IsCollidingWithObject);
+ SCRIPT_METHOD(Object::GetName^1, Object::GetName);
+ SCRIPT_METHOD(Object::GetProperty^1, Object::GetProperty);
+ SCRIPT_METHOD(Object::GetPropertyText^2, Object::GetPropertyText);
+ SCRIPT_METHOD(Object::GetTextProperty^1, Object::GetTextProperty);
+ SCRIPT_METHOD(Object::MergeIntoBackground^0, Object::MergeIntoBackground);
+ SCRIPT_METHOD(Object::Move^5, Object::Move);
+ SCRIPT_METHOD(Object::RemoveTint^0, Object::RemoveTint);
+ SCRIPT_METHOD(Object::RunInteraction^1, Object::RunInteraction);
+ SCRIPT_METHOD(Object::SetPosition^2, Object::SetPosition);
+ SCRIPT_METHOD(Object::SetView^3, Object::SetView);
+ SCRIPT_METHOD(Object::StopAnimating^0, Object::StopAnimating);
+ SCRIPT_METHOD(Object::StopMoving^0, Object::StopMoving);
+ SCRIPT_METHOD(Object::Tint^5, Object::Tint);
+ SCRIPT_METHOD(Object::GetAtRoomXY^2, Object::GetObjectAtRoom);
+ SCRIPT_METHOD(Object::GetAtScreenXY^2, Object::GetObjectAtScreen);
+ SCRIPT_METHOD(Object::get_Animating, Object::GetAnimating);
+ SCRIPT_METHOD(Object::get_Baseline, Object::GetBaseline);
+ SCRIPT_METHOD(Object::set_Baseline, Object::SetBaseline);
+ SCRIPT_METHOD(Object::get_BlockingHeight, Object::GetBlockingHeight);
+ SCRIPT_METHOD(Object::set_BlockingHeight, Object::SetBlockingHeight);
+ SCRIPT_METHOD(Object::get_BlockingWidth, Object::GetBlockingWidth);
+ SCRIPT_METHOD(Object::set_BlockingWidth, Object::SetBlockingWidth);
+ SCRIPT_METHOD(Object::get_Clickable, Object::GetClickable);
+ SCRIPT_METHOD(Object::set_Clickable, Object::SetClickable);
+ SCRIPT_METHOD(Object::get_Frame, Object::GetFrame);
+ SCRIPT_METHOD(Object::get_Graphic, Object::GetGraphic);
+ SCRIPT_METHOD(Object::set_Graphic, Object::SetGraphic);
+ SCRIPT_METHOD(Object::get_ID, Object::GetID);
+ SCRIPT_METHOD(Object::get_IgnoreScaling, Object::GetIgnoreScaling);
+ SCRIPT_METHOD(Object::set_IgnoreScaling, Object::SetIgnoreScaling);
+ SCRIPT_METHOD(Object::get_IgnoreWalkbehinds, Object::GetIgnoreWalkbehinds);
+ SCRIPT_METHOD(Object::set_IgnoreWalkbehinds, Object::SetIgnoreWalkbehinds);
+ SCRIPT_METHOD(Object::get_Loop, Object::GetLoop);
+ SCRIPT_METHOD(Object::get_Moving, Object::GetMoving);
+ SCRIPT_METHOD(Object::get_Name, Object::GetName_New);
+ SCRIPT_METHOD(Object::get_Solid, Object::GetSolid);
+ SCRIPT_METHOD(Object::set_Solid, Object::SetSolid);
+ SCRIPT_METHOD(Object::get_Transparency, Object::GetTransparency);
+ SCRIPT_METHOD(Object::set_Transparency, Object::SetTransparency);
+ SCRIPT_METHOD(Object::get_View, Object::GetView);
+ SCRIPT_METHOD(Object::get_Visible, Object::GetVisible);
+ SCRIPT_METHOD(Object::set_Visible, Object::SetVisible);
+ SCRIPT_METHOD(Object::get_X, Object::GetX);
+ SCRIPT_METHOD(Object::set_X, Object::SetX);
+ SCRIPT_METHOD(Object::get_Y, Object::GetY);
+ SCRIPT_METHOD(Object::set_Y, Object::SetY);
}
void Object::Animate(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/overlay.cpp b/engines/ags/plugins/core/overlay.cpp
index 846672f566..cde24bd78c 100644
--- a/engines/ags/plugins/core/overlay.cpp
+++ b/engines/ags/plugins/core/overlay.cpp
@@ -28,17 +28,15 @@ namespace Plugins {
namespace Core {
void Overlay::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(Overlay::CreateGraphical^4, CreateGraphical);
- SCRIPT_METHOD_EXT(Overlay::CreateTextual^106, ScPl_CreateTextual);
- SCRIPT_METHOD_EXT(Overlay::SetText^104, ScPl_SetText);
- SCRIPT_METHOD_EXT(Overlay::Remove^0, Remove);
- SCRIPT_METHOD_EXT(Overlay::get_Valid, GetValid);
- SCRIPT_METHOD_EXT(Overlay::get_X, GetX);
- SCRIPT_METHOD_EXT(Overlay::set_X, SetX);
- SCRIPT_METHOD_EXT(Overlay::get_Y, GetY);
- SCRIPT_METHOD_EXT(Overlay::set_Y, SetY);
- */
+ SCRIPT_METHOD(Overlay::CreateGraphical^4, Overlay::CreateGraphical);
+ SCRIPT_METHOD(Overlay::CreateTextual^106, Overlay::ScPl_CreateTextual);
+ SCRIPT_METHOD(Overlay::SetText^104, Overlay::ScPl_SetText);
+ SCRIPT_METHOD(Overlay::Remove^0, Overlay::Remove);
+ SCRIPT_METHOD(Overlay::get_Valid, Overlay::GetValid);
+ SCRIPT_METHOD(Overlay::get_X, Overlay::GetX);
+ SCRIPT_METHOD(Overlay::set_X, Overlay::SetX);
+ SCRIPT_METHOD(Overlay::get_Y, Overlay::GetY);
+ SCRIPT_METHOD(Overlay::set_Y, Overlay::SetY);
}
void Overlay::CreateGraphical(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/parser.cpp b/engines/ags/plugins/core/parser.cpp
index 48212bcea5..db24f71538 100644
--- a/engines/ags/plugins/core/parser.cpp
+++ b/engines/ags/plugins/core/parser.cpp
@@ -28,12 +28,10 @@ namespace Plugins {
namespace Core {
void Parser::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(Parser::FindWordID^1, FindWordID);
- SCRIPT_METHOD_EXT(Parser::ParseText^1, ParseText);
- SCRIPT_METHOD_EXT(Parser::SaidUnknownWord^0, SaidUnknownWord);
- SCRIPT_METHOD_EXT(Parser::Said^1, Said);
- */
+ SCRIPT_METHOD(Parser::FindWordID^1, Parser::FindWordID);
+ SCRIPT_METHOD(Parser::ParseText^1, Parser::ParseText);
+ SCRIPT_METHOD(Parser::SaidUnknownWord^0, Parser::SaidUnknownWord);
+ SCRIPT_METHOD(Parser::Said^1, Parser::Said);
}
void Parser::FindWordID(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/region.cpp b/engines/ags/plugins/core/region.cpp
index 4151b64532..b084fef61f 100644
--- a/engines/ags/plugins/core/region.cpp
+++ b/engines/ags/plugins/core/region.cpp
@@ -28,22 +28,20 @@ namespace Plugins {
namespace Core {
void Region::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(Region::GetAtRoomXY^2, GetRegionAtRoom);
- SCRIPT_METHOD_EXT(Region::GetAtScreenXY^2, GetRegionAtScreen);
- SCRIPT_METHOD_EXT(Region::Tint^4, TintNoLum);
- SCRIPT_METHOD_EXT(Region::RunInteraction^1, RunInteraction);
- SCRIPT_METHOD_EXT(Region::get_Enabled, GetEnabled);
- SCRIPT_METHOD_EXT(Region::set_Enabled, SetEnabled);
- SCRIPT_METHOD_EXT(Region::get_ID, GetID);
- SCRIPT_METHOD_EXT(Region::get_LightLevel, GetLightLevel);
- SCRIPT_METHOD_EXT(Region::set_LightLevel, SetLightLevel);
- SCRIPT_METHOD_EXT(Region::get_TintEnabled, GetTintEnabled);
- SCRIPT_METHOD_EXT(Region::get_TintBlue, GetTintBlue);
- SCRIPT_METHOD_EXT(Region::get_TintGreen, GetTintGreen);
- SCRIPT_METHOD_EXT(Region::get_TintRed, GetTintRed);
- SCRIPT_METHOD_EXT(Region::get_TintSaturation, GetTintSaturation);
- */
+ SCRIPT_METHOD(Region::GetAtRoomXY^2, Region::GetRegionAtRoom);
+ SCRIPT_METHOD(Region::GetAtScreenXY^2, Region::GetRegionAtScreen);
+ SCRIPT_METHOD(Region::Tint^4, Region::TintNoLum);
+ SCRIPT_METHOD(Region::RunInteraction^1, Region::RunInteraction);
+ SCRIPT_METHOD(Region::get_Enabled, Region::GetEnabled);
+ SCRIPT_METHOD(Region::set_Enabled, Region::SetEnabled);
+ SCRIPT_METHOD(Region::get_ID, Region::GetID);
+ SCRIPT_METHOD(Region::get_LightLevel, Region::GetLightLevel);
+ SCRIPT_METHOD(Region::set_LightLevel, Region::SetLightLevel);
+ SCRIPT_METHOD(Region::get_TintEnabled, Region::GetTintEnabled);
+ SCRIPT_METHOD(Region::get_TintBlue, Region::GetTintBlue);
+ SCRIPT_METHOD(Region::get_TintGreen, Region::GetTintGreen);
+ SCRIPT_METHOD(Region::get_TintRed, Region::GetTintRed);
+ SCRIPT_METHOD(Region::get_TintSaturation, Region::GetTintSaturation);
}
void Region::GetRegionAtRoom(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/room.cpp b/engines/ags/plugins/core/room.cpp
index bb3c72b33e..30bef68473 100644
--- a/engines/ags/plugins/core/room.cpp
+++ b/engines/ags/plugins/core/room.cpp
@@ -28,21 +28,19 @@ namespace Plugins {
namespace Core {
void Room::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(Room::GetDrawingSurfaceForBackground^1, GetDrawingSurfaceForBackground);
- SCRIPT_METHOD_EXT(Room::GetProperty^1, GetProperty);
- SCRIPT_METHOD_EXT(Room::GetTextProperty^1, GetTextProperty);
- SCRIPT_METHOD_EXT(Room::get_BottomEdge, GetBottomEdge);
- SCRIPT_METHOD_EXT(Room::get_ColorDepth, GetColorDepth);
- SCRIPT_METHOD_EXT(Room::get_Height, GetHeight);
- SCRIPT_METHOD_EXT(Room::get_LeftEdge, GetLeftEdge);
- SCRIPT_METHOD_EXT(Room::geti_Messages, GetMessages);
- SCRIPT_METHOD_EXT(Room::get_MusicOnLoad, GetMusicOnLoad);
- SCRIPT_METHOD_EXT(Room::get_ObjectCount, GetObjectCount);
- SCRIPT_METHOD_EXT(Room::get_RightEdge, GetRightEdge);
- SCRIPT_METHOD_EXT(Room::get_TopEdge, GetTopEdge);
- SCRIPT_METHOD_EXT(Room::get_Width, GetWidth);
- */
+ SCRIPT_METHOD(Room::GetDrawingSurfaceForBackground^1, Room::GetDrawingSurfaceForBackground);
+ SCRIPT_METHOD(Room::GetProperty^1, Room::GetProperty);
+ SCRIPT_METHOD(Room::GetTextProperty^1, Room::GetTextProperty);
+ SCRIPT_METHOD(Room::get_BottomEdge, Room::GetBottomEdge);
+ SCRIPT_METHOD(Room::get_ColorDepth, Room::GetColorDepth);
+ SCRIPT_METHOD(Room::get_Height, Room::GetHeight);
+ SCRIPT_METHOD(Room::get_LeftEdge, Room::GetLeftEdge);
+ SCRIPT_METHOD(Room::geti_Messages, Room::GetMessages);
+ SCRIPT_METHOD(Room::get_MusicOnLoad, Room::GetMusicOnLoad);
+ SCRIPT_METHOD(Room::get_ObjectCount, Room::GetObjectCount);
+ SCRIPT_METHOD(Room::get_RightEdge, Room::GetRightEdge);
+ SCRIPT_METHOD(Room::get_TopEdge, Room::GetTopEdge);
+ SCRIPT_METHOD(Room::get_Width, Room::GetWidth);
}
void Room::GetDrawingSurfaceForBackground(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/slider.cpp b/engines/ags/plugins/core/slider.cpp
index 5b319c6f45..6002fc37f3 100644
--- a/engines/ags/plugins/core/slider.cpp
+++ b/engines/ags/plugins/core/slider.cpp
@@ -28,20 +28,18 @@ namespace Plugins {
namespace Core {
void Slider::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(Slider::get_BackgroundGraphic, GetBackgroundGraphic);
- SCRIPT_METHOD_EXT(Slider::set_BackgroundGraphic, SetBackgroundGraphic);
- SCRIPT_METHOD_EXT(Slider::get_HandleGraphic, GetHandleGraphic);
- SCRIPT_METHOD_EXT(Slider::set_HandleGraphic, SetHandleGraphic);
- SCRIPT_METHOD_EXT(Slider::get_HandleOffset, GetHandleOffset);
- SCRIPT_METHOD_EXT(Slider::set_HandleOffset, SetHandleOffset);
- SCRIPT_METHOD_EXT(Slider::get_Max, GetMax);
- SCRIPT_METHOD_EXT(Slider::set_Max, SetMax);
- SCRIPT_METHOD_EXT(Slider::get_Min, GetMin);
- SCRIPT_METHOD_EXT(Slider::set_Min, SetMin);
- SCRIPT_METHOD_EXT(Slider::get_Value, GetValue);
- SCRIPT_METHOD_EXT(Slider::set_Value, SetValue);
- */
+ SCRIPT_METHOD(Slider::get_BackgroundGraphic, Slider::GetBackgroundGraphic);
+ SCRIPT_METHOD(Slider::set_BackgroundGraphic, Slider::SetBackgroundGraphic);
+ SCRIPT_METHOD(Slider::get_HandleGraphic, Slider::GetHandleGraphic);
+ SCRIPT_METHOD(Slider::set_HandleGraphic, Slider::SetHandleGraphic);
+ SCRIPT_METHOD(Slider::get_HandleOffset, Slider::GetHandleOffset);
+ SCRIPT_METHOD(Slider::set_HandleOffset, Slider::SetHandleOffset);
+ SCRIPT_METHOD(Slider::get_Max, Slider::GetMax);
+ SCRIPT_METHOD(Slider::set_Max, Slider::SetMax);
+ SCRIPT_METHOD(Slider::get_Min, Slider::GetMin);
+ SCRIPT_METHOD(Slider::set_Min, Slider::SetMin);
+ SCRIPT_METHOD(Slider::get_Value, Slider::GetValue);
+ SCRIPT_METHOD(Slider::set_Value, Slider::SetValue);
}
void Slider::GetBackgroundGraphic(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/string.cpp b/engines/ags/plugins/core/string.cpp
index ed9cfe9eeb..4809e67440 100644
--- a/engines/ags/plugins/core/string.cpp
+++ b/engines/ags/plugins/core/string.cpp
@@ -29,28 +29,26 @@ namespace Plugins {
namespace Core {
void String::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(String::IsNullOrEmpty^1, IsNullOrEmpty);
- SCRIPT_METHOD_EXT(String::Append^1, Append);
- SCRIPT_METHOD_EXT(String::AppendChar^1, AppendChar);
- SCRIPT_METHOD_EXT(String::CompareTo^2, CompareTo);
- SCRIPT_METHOD_EXT(String::Contains^1, StrContains);
- SCRIPT_METHOD_EXT(String::Copy^0, Copy);
- SCRIPT_METHOD_EXT(String::EndsWith^2, EndsWith);
- SCRIPT_METHOD_EXT(String::Format^101, ScPl_String_Format);
- SCRIPT_METHOD_EXT(String::IndexOf^1, StrContains);
- SCRIPT_METHOD_EXT(String::LowerCase^0, LowerCase);
- SCRIPT_METHOD_EXT(String::Replace^3, Replace);
- SCRIPT_METHOD_EXT(String::ReplaceCharAt^2, ReplaceCharAt);
- SCRIPT_METHOD_EXT(String::StartsWith^2, StartsWith);
- SCRIPT_METHOD_EXT(String::Substring^2, Substring);
- SCRIPT_METHOD_EXT(String::Truncate^1, Truncate);
- SCRIPT_METHOD_EXT(String::UpperCase^0, UpperCase);
- SCRIPT_METHOD_EXT(String::get_AsFloat, StringToFloat);
- SCRIPT_METHOD_EXT(String::get_AsInt, StringToInt);
- SCRIPT_METHOD_EXT(String::geti_Chars, GetChars);
- SCRIPT_METHOD_EXT(String::get_Length, strlen);
- */
+ SCRIPT_METHOD(String::IsNullOrEmpty^1, String::IsNullOrEmpty);
+ SCRIPT_METHOD(String::Append^1, String::Append);
+ SCRIPT_METHOD(String::AppendChar^1, String::AppendChar);
+ SCRIPT_METHOD(String::CompareTo^2, String::CompareTo);
+ SCRIPT_METHOD(String::Contains^1, String::StrContains);
+ SCRIPT_METHOD(String::Copy^0, String::Copy);
+ SCRIPT_METHOD(String::EndsWith^2, String::EndsWith);
+ SCRIPT_METHOD(String::Format^101, String::ScPl_String_Format);
+ SCRIPT_METHOD(String::IndexOf^1, String::StrContains);
+ SCRIPT_METHOD(String::LowerCase^0, String::LowerCase);
+ SCRIPT_METHOD(String::Replace^3, String::Replace);
+ SCRIPT_METHOD(String::ReplaceCharAt^2, String::ReplaceCharAt);
+ SCRIPT_METHOD(String::StartsWith^2, String::StartsWith);
+ SCRIPT_METHOD(String::Substring^2, String::Substring);
+ SCRIPT_METHOD(String::Truncate^1, String::Truncate);
+ SCRIPT_METHOD(String::UpperCase^0, String::UpperCase);
+ SCRIPT_METHOD(String::get_AsFloat, String::StringToFloat);
+ SCRIPT_METHOD(String::get_AsInt, String::StringToInt);
+ SCRIPT_METHOD(String::geti_Chars, String::GetChars);
+ SCRIPT_METHOD(String::get_Length, String::strlen);
}
void String::IsNullOrEmpty(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/system.cpp b/engines/ags/plugins/core/system.cpp
index 4c7b097a72..723ef6a35a 100644
--- a/engines/ags/plugins/core/system.cpp
+++ b/engines/ags/plugins/core/system.cpp
@@ -28,31 +28,29 @@ namespace Plugins {
namespace Core {
void System::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(System::get_AudioChannelCount, GetAudioChannelCount);
- SCRIPT_METHOD_EXT(System::geti_AudioChannels, GetAudioChannels);
- SCRIPT_METHOD_EXT(System::get_CapsLock, GetCapsLock);
- SCRIPT_METHOD_EXT(System::get_ColorDepth, GetColorDepth);
- SCRIPT_METHOD_EXT(System::get_Gamma, GetGamma);
- SCRIPT_METHOD_EXT(System::set_Gamma, SetGamma);
- SCRIPT_METHOD_EXT(System::get_HardwareAcceleration, GetHardwareAcceleration);
- SCRIPT_METHOD_EXT(System::get_NumLock, GetNumLock);
- SCRIPT_METHOD_EXT(System::get_OperatingSystem, GetOS);
- SCRIPT_METHOD_EXT(System::get_RuntimeInfo, GetRuntimeInfo);
- SCRIPT_METHOD_EXT(System::get_ScreenHeight, GetScreenHeight);
- SCRIPT_METHOD_EXT(System::get_ScreenWidth, GetScreenWidth);
- SCRIPT_METHOD_EXT(System::get_ScrollLock, GetScrollLock);
- SCRIPT_METHOD_EXT(System::get_SupportsGammaControl, GetSupportsGammaControl);
- SCRIPT_METHOD_EXT(System::get_Version, GetVersion);
- SCRIPT_METHOD_EXT(SystemInfo::get_Version, GetVersion);
- SCRIPT_METHOD_EXT(System::get_ViewportHeight, GetViewportHeight);
- SCRIPT_METHOD_EXT(System::get_ViewportWidth, GetViewportWidth);
- SCRIPT_METHOD_EXT(System::get_Volume, GetVolume);
- SCRIPT_METHOD_EXT(System::set_Volume, SetVolume);
- SCRIPT_METHOD_EXT(System::get_VSync, GetVsync);
- SCRIPT_METHOD_EXT(System::set_VSync, SetVsync);
- SCRIPT_METHOD_EXT(System::get_Windowed, GetWindowed);
- */
+ SCRIPT_METHOD(System::get_AudioChannelCount, System::GetAudioChannelCount);
+ SCRIPT_METHOD(System::geti_AudioChannels, System::GetAudioChannels);
+ SCRIPT_METHOD(System::get_CapsLock, System::GetCapsLock);
+ SCRIPT_METHOD(System::get_ColorDepth, System::GetColorDepth);
+ SCRIPT_METHOD(System::get_Gamma, System::GetGamma);
+ SCRIPT_METHOD(System::set_Gamma, System::SetGamma);
+ SCRIPT_METHOD(System::get_HardwareAcceleration, System::GetHardwareAcceleration);
+ SCRIPT_METHOD(System::get_NumLock, System::GetNumLock);
+ SCRIPT_METHOD(System::get_OperatingSystem, System::GetOS);
+ SCRIPT_METHOD(System::get_RuntimeInfo, System::GetRuntimeInfo);
+ SCRIPT_METHOD(System::get_ScreenHeight, System::GetScreenHeight);
+ SCRIPT_METHOD(System::get_ScreenWidth, System::GetScreenWidth);
+ SCRIPT_METHOD(System::get_ScrollLock, System::GetScrollLock);
+ SCRIPT_METHOD(System::get_SupportsGammaControl, System::GetSupportsGammaControl);
+ SCRIPT_METHOD(System::get_Version, System::GetVersion);
+ SCRIPT_METHOD(SystemInfo::get_Version, System::GetVersion);
+ SCRIPT_METHOD(System::get_ViewportHeight, System::GetViewportHeight);
+ SCRIPT_METHOD(System::get_ViewportWidth, System::GetViewportWidth);
+ SCRIPT_METHOD(System::get_Volume, System::GetVolume);
+ SCRIPT_METHOD(System::set_Volume, System::SetVolume);
+ SCRIPT_METHOD(System::get_VSync, System::GetVsync);
+ SCRIPT_METHOD(System::set_VSync, System::SetVsync);
+ SCRIPT_METHOD(System::get_Windowed, System::GetWindowed);
}
void System::GetAudioChannelCount(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/textbox.cpp b/engines/ags/plugins/core/textbox.cpp
index 07a217c23b..5e25ca958b 100644
--- a/engines/ags/plugins/core/textbox.cpp
+++ b/engines/ags/plugins/core/textbox.cpp
@@ -28,16 +28,14 @@ namespace Plugins {
namespace Core {
void Textbox::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(TextBox::GetText^1, GetText);
- SCRIPT_METHOD_EXT(TextBox::SetText^1, SetText);
- SCRIPT_METHOD_EXT(TextBox::get_Font, GetFont);
- SCRIPT_METHOD_EXT(TextBox::set_Font, SetFont);
- SCRIPT_METHOD_EXT(TextBox::get_Text, GetText_New);
- SCRIPT_METHOD_EXT(TextBox::set_Text, SetText);
- SCRIPT_METHOD_EXT(TextBox::get_TextColor, GetTextColor);
- SCRIPT_METHOD_EXT(TextBox::set_TextColor, SetTextColor);
- */
+ SCRIPT_METHOD(TextBox::GetText^1, Textbox::GetText);
+ SCRIPT_METHOD(TextBox::SetText^1, Textbox::SetText);
+ SCRIPT_METHOD(TextBox::get_Font, Textbox::GetFont);
+ SCRIPT_METHOD(TextBox::set_Font, Textbox::SetFont);
+ SCRIPT_METHOD(TextBox::get_Text, Textbox::GetText_New);
+ SCRIPT_METHOD(TextBox::set_Text, Textbox::SetText);
+ SCRIPT_METHOD(TextBox::get_TextColor, Textbox::GetTextColor);
+ SCRIPT_METHOD(TextBox::set_TextColor, Textbox::SetTextColor);
}
void Textbox::GetText(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/core/view_frame.cpp b/engines/ags/plugins/core/view_frame.cpp
index 5e6b2ea162..7376bf67d8 100644
--- a/engines/ags/plugins/core/view_frame.cpp
+++ b/engines/ags/plugins/core/view_frame.cpp
@@ -28,19 +28,17 @@ namespace Plugins {
namespace Core {
void ViewFrame::AGS_EngineStartup(IAGSEngine *engine) {
- /*
- SCRIPT_METHOD_EXT(ViewFrame::get_Flipped, GetFlipped);
- SCRIPT_METHOD_EXT(ViewFrame::get_Frame, GetFrame);
- SCRIPT_METHOD_EXT(ViewFrame::get_Graphic, GetGraphic);
- SCRIPT_METHOD_EXT(ViewFrame::set_Graphic, SetGraphic);
- SCRIPT_METHOD_EXT(ViewFrame::get_LinkedAudio, GetLinkedAudio);
- SCRIPT_METHOD_EXT(ViewFrame::set_LinkedAudio, SetLinkedAudio);
- SCRIPT_METHOD_EXT(ViewFrame::get_Loop, GetLoop);
- SCRIPT_METHOD_EXT(ViewFrame::get_Sound, GetSound);
- SCRIPT_METHOD_EXT(ViewFrame::set_Sound, SetSound);
- SCRIPT_METHOD_EXT(ViewFrame::get_Speed, GetSpeed);
- SCRIPT_METHOD_EXT(ViewFrame::get_View, GetView);
- */
+ SCRIPT_METHOD(ViewFrame::get_Flipped, ViewFrame::GetFlipped);
+ SCRIPT_METHOD(ViewFrame::get_Frame, ViewFrame::GetFrame);
+ SCRIPT_METHOD(ViewFrame::get_Graphic, ViewFrame::GetGraphic);
+ SCRIPT_METHOD(ViewFrame::set_Graphic, ViewFrame::SetGraphic);
+ SCRIPT_METHOD(ViewFrame::get_LinkedAudio, ViewFrame::GetLinkedAudio);
+ SCRIPT_METHOD(ViewFrame::set_LinkedAudio, ViewFrame::SetLinkedAudio);
+ SCRIPT_METHOD(ViewFrame::get_Loop, ViewFrame::GetLoop);
+ SCRIPT_METHOD(ViewFrame::get_Sound, ViewFrame::GetSound);
+ SCRIPT_METHOD(ViewFrame::set_Sound, ViewFrame::SetSound);
+ SCRIPT_METHOD(ViewFrame::get_Speed, ViewFrame::GetSpeed);
+ SCRIPT_METHOD(ViewFrame::get_View, ViewFrame::GetView);
}
void ViewFrame::GetFlipped(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/plugin_base.h b/engines/ags/plugins/plugin_base.h
index 7cd551cf6e..e0e08c2f10 100644
--- a/engines/ags/plugins/plugin_base.h
+++ b/engines/ags/plugins/plugin_base.h
@@ -35,8 +35,7 @@ class IAGSEngine;
namespace Plugins {
-#define SCRIPT_METHOD(NAME) addMethod(#NAME, &NAME)
-#define SCRIPT_METHOD_EXT(NAME, PROC) addMethod(#NAME, &(PROC))
+#define SCRIPT_METHOD(NAME, PROC) addMethod(#NAME, &PROC)
#define SCRIPT_HASH(TheClass) \
private: \
Commit: 8caed23e8b91864b20dd65f6776db854a863c713
https://github.com/scummvm/scummvm/commit/8caed23e8b91864b20dd65f6776db854a863c713
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2021-07-18T17:07:02-07:00
Commit Message:
AGS: Refactoring the plugins for new instance scheme
Changed paths:
engines/ags/module.mk
engines/ags/plugins/ags_agi/ags_agi.cpp
engines/ags/plugins/ags_agi/ags_agi.h
engines/ags/plugins/ags_blend/ags_blend.cpp
engines/ags/plugins/ags_blend/ags_blend.h
engines/ags/plugins/ags_clipboard/ags_clipboard.cpp
engines/ags/plugins/ags_clipboard/ags_clipboard.h
engines/ags/plugins/ags_controller/ags_controller.cpp
engines/ags/plugins/ags_controller/ags_controller.h
engines/ags/plugins/ags_creditz/ags_creditz.cpp
engines/ags/plugins/ags_creditz/ags_creditz.h
engines/ags/plugins/ags_creditz/ags_creditz1.cpp
engines/ags/plugins/ags_creditz/ags_creditz1.h
engines/ags/plugins/ags_creditz/ags_creditz2.cpp
engines/ags/plugins/ags_creditz/ags_creditz2.h
engines/ags/plugins/ags_fire/ags_fire.cpp
engines/ags/plugins/ags_fire/ags_fire.h
engines/ags/plugins/ags_flashlight/ags_flashlight.cpp
engines/ags/plugins/ags_flashlight/ags_flashlight.h
engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.cpp
engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.h
engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.cpp
engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.h
engines/ags/plugins/ags_joy/ags_joy.cpp
engines/ags/plugins/ags_joy/ags_joy.h
engines/ags/plugins/ags_nickenstien_gfx/ags_nickenstien_gfx.cpp
engines/ags/plugins/ags_nickenstien_gfx/ags_nickenstien_gfx.h
engines/ags/plugins/ags_pal_render/ags_pal_render.cpp
engines/ags/plugins/ags_pal_render/ags_pal_render.h
engines/ags/plugins/ags_pal_render/pal_render.h
engines/ags/plugins/ags_pal_render/raycast.cpp
engines/ags/plugins/ags_pal_render/raycast.h
engines/ags/plugins/ags_parallax/ags_parallax.cpp
engines/ags/plugins/ags_parallax/ags_parallax.h
engines/ags/plugins/ags_shell/ags_shell.cpp
engines/ags/plugins/ags_shell/ags_shell.h
engines/ags/plugins/ags_snow_rain/ags_snow_rain.cpp
engines/ags/plugins/ags_snow_rain/ags_snow_rain.h
engines/ags/plugins/ags_snow_rain/weather.cpp
engines/ags/plugins/ags_snow_rain/weather.h
engines/ags/plugins/ags_sock/ags_sock.cpp
engines/ags/plugins/ags_sock/ags_sock.h
engines/ags/plugins/ags_sprite_font/ags_sprite_font.cpp
engines/ags/plugins/ags_sprite_font/ags_sprite_font.h
engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.cpp
engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.h
engines/ags/plugins/ags_sprite_font/sprite_font_renderer.cpp
engines/ags/plugins/ags_sprite_font/sprite_font_renderer.h
engines/ags/plugins/ags_sprite_font/variable_width_font.cpp
engines/ags/plugins/ags_sprite_font/variable_width_font.h
engines/ags/plugins/ags_sprite_font/variable_width_sprite_font.cpp
engines/ags/plugins/ags_sprite_font/variable_width_sprite_font.h
engines/ags/plugins/ags_sprite_font/variable_width_sprite_font_clifftop.h
engines/ags/plugins/ags_tcp_ip/ags_tcp_ip.cpp
engines/ags/plugins/ags_tcp_ip/ags_tcp_ip.h
engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.cpp
engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.h
engines/ags/plugins/ags_waves/ags_waves.cpp
engines/ags/plugins/ags_waves/ags_waves.h
engines/ags/plugins/plugin_base.cpp
diff --git a/engines/ags/module.mk b/engines/ags/module.mk
index c3fe037479..65f6f9dcd1 100644
--- a/engines/ags/module.mk
+++ b/engines/ags/module.mk
@@ -317,8 +317,7 @@ MODULE_OBJS = \
plugins/core/string.o \
plugins/core/system.o \
plugins/core/textbox.o \
- plugins/core/view_frame.o
-/*
+ plugins/core/view_frame.o \
plugins/ags_agi/ags_agi.o \
plugins/ags_blend/ags_blend.o \
plugins/ags_clipboard/ags_clipboard.o \
@@ -353,7 +352,7 @@ MODULE_OBJS = \
plugins/ags_tcp_ip/ags_tcp_ip.o \
plugins/ags_wadjet_util/ags_wadjet_util.o \
plugins/ags_waves/ags_waves.o
-*/
+
ifdef ENABLE_AGS_TESTS
MODULE_OBJS += \
tests/test_all.o \
diff --git a/engines/ags/plugins/ags_agi/ags_agi.cpp b/engines/ags/plugins/ags_agi/ags_agi.cpp
index 9cc225b5cf..2f3910195e 100644
--- a/engines/ags/plugins/ags_agi/ags_agi.cpp
+++ b/engines/ags/plugins/ags_agi/ags_agi.cpp
@@ -26,29 +26,16 @@ namespace AGS3 {
namespace Plugins {
namespace AGSAgi {
-int screen_mode = 0;
-
-AGSAgi::AGSAgi() : PluginBase() {
- _engine = nullptr;
- _enabled = 0;
- _scaling_mode = 0;
-
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
-}
-
const char *AGSAgi::AGS_GetPluginName() {
return "AGS AGI Plugin stub (ags_agi.dll)";
}
void AGSAgi::AGS_EngineStartup(IAGSEngine *engine) {
- _engine = engine;
- _enabled = 0;
- _scaling_mode = 0;
+ PluginBase::AGS_EngineStartup(engine);
- SCRIPT_METHOD(SetAGIScalingMode);
- SCRIPT_METHOD(GetAGIScalingMode);
- SCRIPT_METHOD(UseAGIScaling);
+ SCRIPT_METHOD(SetAGIScalingMode, AGSAgi::SetAGIScalingMode);
+ SCRIPT_METHOD(GetAGIScalingMode, AGSAgi::GetAGIScalingMode);
+ SCRIPT_METHOD(UseAGIScaling, AGSAgi::UseAGIScaling);
}
void AGSAgi::SetAGIScalingMode(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/ags_agi/ags_agi.h b/engines/ags/plugins/ags_agi/ags_agi.h
index 8d7d424e78..f46eee773e 100644
--- a/engines/ags/plugins/ags_agi/ags_agi.h
+++ b/engines/ags/plugins/ags_agi/ags_agi.h
@@ -23,28 +23,29 @@
#ifndef AGS_PLUGINS_AGS_AGI_AGS_AGI_H
#define AGS_PLUGINS_AGS_AGI_AGS_AGI_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace AGSAgi {
class AGSAgi : public PluginBase {
+ SCRIPT_HASH(AGSAgi)
private:
int _enabled = 0;
int _scaling_mode = 0;
-private:
- const char *AGS_GetPluginName() override;
- void AGS_EngineStartup(IAGSEngine *engine) override;
-
private:
void SetAGIScalingMode(ScriptMethodParams ¶ms);
void GetAGIScalingMode(ScriptMethodParams ¶ms);
void UseAGIScaling(ScriptMethodParams ¶ms);
public:
- AGSAgi();
+ AGSAgi() : PluginBase() {}
+ virtual ~AGSAgi() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *engine) override;
};
} // namespace AGSAgi
diff --git a/engines/ags/plugins/ags_blend/ags_blend.cpp b/engines/ags/plugins/ags_blend/ags_blend.cpp
index 1b165027b5..9ccd6f5b73 100644
--- a/engines/ags/plugins/ags_blend/ags_blend.cpp
+++ b/engines/ags/plugins/ags_blend/ags_blend.cpp
@@ -77,32 +77,25 @@ namespace AGSBlend {
#pragma endregion
-IAGSEngine *AGSBlend::_engine;
-
-AGSBlend::AGSBlend() : PluginBase() {
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
-}
-
const char *AGSBlend::AGS_GetPluginName() {
return "AGSBlend";
}
void AGSBlend::AGS_EngineStartup(IAGSEngine *engine) {
- _engine = engine;
+ PluginBase::AGS_EngineStartup(engine);
// Make sure it's got the version with the features we need
if (_engine->version < MIN_ENGINE_VERSION)
_engine->AbortGame("Plugin needs engine version " STRINGIFY(MIN_ENGINE_VERSION) " or newer.");
// Register functions
- SCRIPT_METHOD(GetAlpha);
- SCRIPT_METHOD(PutAlpha);
- SCRIPT_METHOD(DrawAlpha);
- SCRIPT_METHOD(Blur);
- SCRIPT_METHOD(HighPass);
- SCRIPT_METHOD(DrawAdd);
- SCRIPT_METHOD(DrawSprite);
+ SCRIPT_METHOD(GetAlpha, AGSBlend::GetAlpha);
+ SCRIPT_METHOD(PutAlpha, AGSBlend::PutAlpha);
+ SCRIPT_METHOD(DrawAlpha, AGSBlend::DrawAlpha);
+ SCRIPT_METHOD(Blur, AGSBlend::Blur);
+ SCRIPT_METHOD(HighPass, AGSBlend::HighPass);
+ SCRIPT_METHOD(DrawAdd, AGSBlend::DrawAdd);
+ SCRIPT_METHOD(DrawSprite, AGSBlend::DrawSprite);
}
//------------------------------------------------------------------------------
diff --git a/engines/ags/plugins/ags_blend/ags_blend.h b/engines/ags/plugins/ags_blend/ags_blend.h
index 74d967fcc3..6030ff6a84 100644
--- a/engines/ags/plugins/ags_blend/ags_blend.h
+++ b/engines/ags/plugins/ags_blend/ags_blend.h
@@ -23,7 +23,7 @@
#ifndef AGS_PLUGINS_AGS_BLEND_AGS_BLEND_H
#define AGS_PLUGINS_AGS_BLEND_AGS_BLEND_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
@@ -34,36 +34,35 @@ namespace AGSBlend {
* Description: An AGS Plugin to allow true Alpha Blending
*/
class AGSBlend : public PluginBase {
+ SCRIPT_HASH(AGSBlend)
private:
-IAGSEngine *_engine;
-private:
-const char *AGS_GetPluginName();
-void AGS_EngineStartup(IAGSEngine *lpEngine);
-
-private:
-/**
- * Gets the alpha value at coords x,y
- */
-void GetAlpha(ScriptMethodParams ¶ms);
+ /**
+ * Gets the alpha value at coords x,y
+ */
+ void GetAlpha(ScriptMethodParams ¶ms);
-/**
- * Sets the alpha value at coords x,y
- */
-void PutAlpha(ScriptMethodParams ¶ms);
+ /**
+ * Sets the alpha value at coords x,y
+ */
+ void PutAlpha(ScriptMethodParams ¶ms);
-/**
- * Translates index from a 2D array to a 1D array
- */
-int xytolocale(int x, int y, int width);
+ /**
+ * Translates index from a 2D array to a 1D array
+ */
+ int xytolocale(int x, int y, int width);
-void HighPass(ScriptMethodParams ¶ms);
-void Blur(ScriptMethodParams ¶ms);
-void DrawSprite(ScriptMethodParams ¶ms);
-void DrawAdd(ScriptMethodParams ¶ms);
-void DrawAlpha(ScriptMethodParams ¶ms);
+ void HighPass(ScriptMethodParams ¶ms);
+ void Blur(ScriptMethodParams ¶ms);
+ void DrawSprite(ScriptMethodParams ¶ms);
+ void DrawAdd(ScriptMethodParams ¶ms);
+ void DrawAlpha(ScriptMethodParams ¶ms);
public:
-AGSBlend();
+ AGSBlend() : PluginBase() {}
+ virtual ~AGSBlend() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *lpEngine) override;
};
} // namespace AGSBlend
diff --git a/engines/ags/plugins/ags_clipboard/ags_clipboard.cpp b/engines/ags/plugins/ags_clipboard/ags_clipboard.cpp
index 8a5231b44f..ac01d6cbb1 100644
--- a/engines/ags/plugins/ags_clipboard/ags_clipboard.cpp
+++ b/engines/ags/plugins/ags_clipboard/ags_clipboard.cpp
@@ -27,36 +27,22 @@ namespace AGS3 {
namespace Plugins {
namespace AGSClipboard {
-IAGSEngine *AGSClipboard::_engine;
-Common::String *AGSClipboard::_text;
-
-AGSClipboard::AGSClipboard() : PluginBase() {
- _engine = nullptr;
- _text = new Common::String();
-
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
- DLL_METHOD(AGS_EngineShutdown);
-}
-
const char *AGSClipboard::AGS_GetPluginName() {
return "AGS Clipboard Plugin v0.4";
}
void AGSClipboard::AGS_EngineStartup(IAGSEngine *engine) {
- SCRIPT_METHOD_EXT(Clipboard::PasteText, Clipboard_PasteText);
- SCRIPT_METHOD_EXT(Clipboard::CopyText^1, Clipboard_CopyText);
-}
+ AGS_EngineStartup(engine);
-void AGSClipboard::AGS_EngineShutdown() {
- delete _text;
+ SCRIPT_METHOD(Clipboard::PasteText, AGSClipboard::Clipboard_PasteText);
+ SCRIPT_METHOD(Clipboard::CopyText^1, AGSClipboard::Clipboard_CopyText);
}
void AGSClipboard::Clipboard_PasteText(ScriptMethodParams ¶ms) {
Common::U32String text = g_system->getTextFromClipboard();
- *_text = Common::String(text);
+ _text = text;
- params._result = _text->c_str();
+ params._result = _text.c_str();
}
void AGSClipboard::Clipboard_CopyText(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/ags_clipboard/ags_clipboard.h b/engines/ags/plugins/ags_clipboard/ags_clipboard.h
index 697f867b9f..b5d735b481 100644
--- a/engines/ags/plugins/ags_clipboard/ags_clipboard.h
+++ b/engines/ags/plugins/ags_clipboard/ags_clipboard.h
@@ -23,25 +23,26 @@
#ifndef AGS_PLUGINS_AGS_CLIPBOARD_H
#define AGS_PLUGINS_AGS_CLIPBOARD_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace AGSClipboard {
class AGSClipboard : public PluginBase {
+ SCRIPT_HASH(AGSClipboard)
private:
- IAGSEngine *_engine;
- Common::String *_text;
+ Common::String _text;
private:
- const char *AGS_GetPluginName();
- void AGS_EngineStartup(IAGSEngine *engine) override;
- void AGS_EngineShutdown();
void Clipboard_PasteText(ScriptMethodParams ¶ms);
void Clipboard_CopyText(ScriptMethodParams ¶ms);
public:
- AGSClipboard();
+ AGSClipboard() : PluginBase() {}
+ virtual ~AGSClipboard() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *engine) override;
};
} // namespace AGSClipboard
diff --git a/engines/ags/plugins/ags_controller/ags_controller.cpp b/engines/ags/plugins/ags_controller/ags_controller.cpp
index a9cb149264..3985a0b66c 100644
--- a/engines/ags/plugins/ags_controller/ags_controller.cpp
+++ b/engines/ags/plugins/ags_controller/ags_controller.cpp
@@ -29,43 +29,30 @@ namespace AGS3 {
namespace Plugins {
namespace AGSController {
-IAGSEngine *AGSController::_engine;
-
-AGSController::AGSController() : PluginBase() {
- _engine = nullptr;
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
- DLL_METHOD(AGS_EngineShutdown);
- DLL_METHOD(AGS_EngineOnEvent);
-}
-
const char *AGSController::AGS_GetPluginName() {
return "AGSController";
}
void AGSController::AGS_EngineStartup(IAGSEngine *engine) {
- _engine = engine;
-
- SCRIPT_METHOD_EXT(ControllerCount, ControllerCount);
- SCRIPT_METHOD_EXT(Controller::Open, Controller_Open);
- SCRIPT_METHOD_EXT(Controller::Close, Controller_Close);
- SCRIPT_METHOD_EXT(Controller::Plugged, Controller_Plugged);
- SCRIPT_METHOD_EXT(Controller::GetAxis, Controller_GetAxis);
- SCRIPT_METHOD_EXT(Controller::GetPOV, Controller_GetPOV);
- SCRIPT_METHOD_EXT(Controller::IsButtonDown, Controller_IsButtonDown);
- SCRIPT_METHOD_EXT(Controller::GetName ^ 0, Controller_GetName);
- SCRIPT_METHOD_EXT(Controller::Rumble, Controller_Rumble);
- SCRIPT_METHOD_EXT(Controller::IsButtonDownOnce, Controller_IsButtonDownOnce);
- SCRIPT_METHOD_EXT(Controller::PressAnyKey, Controller_PressAnyKey);
- SCRIPT_METHOD_EXT(Controller::BatteryStatus, Controller_BatteryStatus);
- SCRIPT_METHOD_EXT(ClickMouse, ClickMouse);
+ PluginBase::AGS_EngineStartup(engine);
+
+ SCRIPT_METHOD(ControllerCount, AGSController::ControllerCount);
+ SCRIPT_METHOD(Controller::Open, AGSController::Controller_Open);
+ SCRIPT_METHOD(Controller::Close, AGSController::Controller_Close);
+ SCRIPT_METHOD(Controller::Plugged, AGSController::Controller_Plugged);
+ SCRIPT_METHOD(Controller::GetAxis, AGSController::Controller_GetAxis);
+ SCRIPT_METHOD(Controller::GetPOV, AGSController::Controller_GetPOV);
+ SCRIPT_METHOD(Controller::IsButtonDown, AGSController::Controller_IsButtonDown);
+ SCRIPT_METHOD(Controller::GetName ^ 0, AGSController::Controller_GetName);
+ SCRIPT_METHOD(Controller::Rumble, AGSController::Controller_Rumble);
+ SCRIPT_METHOD(Controller::IsButtonDownOnce, AGSController::Controller_IsButtonDownOnce);
+ SCRIPT_METHOD(Controller::PressAnyKey, AGSController::Controller_PressAnyKey);
+ SCRIPT_METHOD(Controller::BatteryStatus, AGSController::Controller_BatteryStatus);
+ SCRIPT_METHOD(ClickMouse, AGSController::ClickMouse);
_engine->RequestEventHook(AGSE_PREGUIDRAW);
}
-void AGSController::AGS_EngineShutdown() {
-}
-
int64 AGSController::AGS_EngineOnEvent(int event, NumberPtr data) {
if (event == AGSE_PREGUIDRAW) {
Controller_Update();
diff --git a/engines/ags/plugins/ags_controller/ags_controller.h b/engines/ags/plugins/ags_controller/ags_controller.h
index 986bab0125..7bc96cf205 100644
--- a/engines/ags/plugins/ags_controller/ags_controller.h
+++ b/engines/ags/plugins/ags_controller/ags_controller.h
@@ -23,40 +23,37 @@
#ifndef AGS_PLUGINS_AGSCONTROLLER_AGSCONTROLLER_H
#define AGS_PLUGINS_AGSCONTROLLER_AGSCONTROLLER_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace AGSController {
class AGSController : public PluginBase {
+ SCRIPT_HASH(AGSController)
private:
-IAGSEngine *_engine;
-
-private:
-const char *AGS_GetPluginName();
-void AGS_EngineStartup(IAGSEngine *engine) override;
-void AGS_EngineShutdown();
-int64 AGS_EngineOnEvent(int event, NumberPtr data);
-
-private:
-void Controller_Update();
-
-void ControllerCount(ScriptMethodParams ¶ms);
-void Controller_Open(ScriptMethodParams ¶ms);
-void Controller_Plugged(ScriptMethodParams ¶ms);
-void Controller_GetAxis(ScriptMethodParams ¶ms);
-void Controller_GetPOV(ScriptMethodParams ¶ms);
-void Controller_IsButtonDown(ScriptMethodParams ¶ms);
-void Controller_Close(ScriptMethodParams ¶ms);
-void Controller_GetName(ScriptMethodParams ¶ms);
-void Controller_Rumble(ScriptMethodParams ¶ms);
-void Controller_IsButtonDownOnce(ScriptMethodParams ¶ms);
-void Controller_PressAnyKey(ScriptMethodParams ¶ms);
-void Controller_BatteryStatus(ScriptMethodParams ¶ms);
-void ClickMouse(ScriptMethodParams ¶ms);
+ void Controller_Update();
+
+ void ControllerCount(ScriptMethodParams ¶ms);
+ void Controller_Open(ScriptMethodParams ¶ms);
+ void Controller_Plugged(ScriptMethodParams ¶ms);
+ void Controller_GetAxis(ScriptMethodParams ¶ms);
+ void Controller_GetPOV(ScriptMethodParams ¶ms);
+ void Controller_IsButtonDown(ScriptMethodParams ¶ms);
+ void Controller_Close(ScriptMethodParams ¶ms);
+ void Controller_GetName(ScriptMethodParams ¶ms);
+ void Controller_Rumble(ScriptMethodParams ¶ms);
+ void Controller_IsButtonDownOnce(ScriptMethodParams ¶ms);
+ void Controller_PressAnyKey(ScriptMethodParams ¶ms);
+ void Controller_BatteryStatus(ScriptMethodParams ¶ms);
+ void ClickMouse(ScriptMethodParams ¶ms);
public:
-AGSController();
+ AGSController() : PluginBase() {}
+ virtual ~AGSController() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *engine) override;
+ int64 AGS_EngineOnEvent(int event, NumberPtr data) override;
};
} // namespace AGSController
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz.cpp b/engines/ags/plugins/ags_creditz/ags_creditz.cpp
index e9a38ae1d6..36bdeab6dd 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz.cpp
+++ b/engines/ags/plugins/ags_creditz/ags_creditz.cpp
@@ -27,12 +27,7 @@ namespace AGS3 {
namespace Plugins {
namespace AGSCreditz {
-AGSCreditz::Version AGSCreditz::_version;
-State *AGSCreditz::_state;
-IAGSEngine *AGSCreditz::_engine;
-IntFunction AGSCreditz::_playSound;
-
-AGSCreditz::AGSCreditz() {
+AGSCreditz::AGSCreditz() : PluginBase(), Drawing() {
_state = new State();
_engine = nullptr;
}
@@ -74,7 +69,7 @@ void AGSCreditz::draw() {
} else {
// credits
if (!_state->_singleStatic.bool_) {
- if (_state->_current< (int)_state->_stCredits[_state->_creditSequence].size()) {
+ if (_state->_currentStatic < (int)_state->_stCredits[_state->_creditSequence].size()) {
if (_state->_stCredits[_state->_creditSequence][_state->_currentStatic].pause > 0) {
// Pause
if (_state->_timer <= _state->_stCredits[_state->_creditSequence][_state->_currentStatic].pause) {
@@ -93,7 +88,7 @@ void AGSCreditz::draw() {
_state->_timer = 0;
_state->_currentStatic++;
if (_state->_stCredits[_state->_creditSequence][_state->_currentStatic].pause <= 0 &&
- _state->_current< (int)_state->_stCredits[_state->_creditSequence].size())
+ _state->_currentStatic< (int)_state->_stCredits[_state->_creditSequence].size())
drawCredit(_state->_creditSequence, _state->_currentStatic);
else
return;
@@ -109,7 +104,7 @@ void AGSCreditz::draw() {
_state->_timer = 0;
_state->_currentStatic++;
if (_state->_stCredits[_state->_creditSequence][_state->_currentStatic].pause <= 0 &&
- (int)_state->_current<= (int)_state->_stCredits[_state->_creditSequence].size())
+ (int)_state->_currentStatic<= (int)_state->_stCredits[_state->_creditSequence].size())
drawCredit(_state->_creditSequence, _state->_currentStatic);
else
return;
@@ -121,7 +116,7 @@ void AGSCreditz::draw() {
_state->_creditsRunning = false;
_state->_creditSequence = -1;
_state->_timer = 0;
- _state->_current= 1;
+ _state->_currentStatic= 1;
return;
}
} else {
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz.h b/engines/ags/plugins/ags_creditz/ags_creditz.h
index 60330f6f95..73daf328ef 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz.h
+++ b/engines/ags/plugins/ags_creditz/ags_creditz.h
@@ -23,7 +23,7 @@
#ifndef AGS_PLUGINS_AGSCREDITZ_AGSCREDITZ_H
#define AGS_PLUGINS_AGSCREDITZ_AGSCREDITZ_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
#include "ags/plugins/ags_creditz/drawing.h"
#include "common/array.h"
#include "common/rect.h"
@@ -36,113 +36,112 @@ namespace AGSCreditz {
typedef int (*IntFunction)(int val1);
struct Credit {
-Common::String _text;
-int _x = 0;
-int _y = 0;
-int _fontSlot = 0;
-int _colorHeight = 0;
-bool _isSet = false;
-bool _image = false;
-bool _outline = false;
+ Common::String _text;
+ int _x = 0;
+ int _y = 0;
+ int _fontSlot = 0;
+ int _colorHeight = 0;
+ bool _isSet = false;
+ bool _image = false;
+ bool _outline = false;
};
struct SequenceSettings {
-int startpoint = 0;
-int endpoint = 0;
-int speed = 0;
-bool finished = false;
-int automatic = 0;
-int endwait = 0;
-int topmask = 0;
-int bottommask = 0;
+ int startpoint = 0;
+ int endpoint = 0;
+ int speed = 0;
+ bool finished = false;
+ int automatic = 0;
+ int endwait = 0;
+ int topmask = 0;
+ int bottommask = 0;
};
struct StCredit {
-Common::String credit;
-Common::String title;
-int x = 0;
-int y = 0;
-int font = 0;
-int color = 0;
-int title_x = 0;
-int title_y = 0;
-int title_font = 0;
-int title_color = 0;
-bool title_centered = false;
-bool title_outline = false;
-int pause = 0;
-bool image = false;
-int image_slot = 0;
-int image_time = 0;
-bool outline = false;
+ Common::String credit;
+ Common::String title;
+ int x = 0;
+ int y = 0;
+ int font = 0;
+ int color = 0;
+ int title_x = 0;
+ int title_y = 0;
+ int title_font = 0;
+ int title_color = 0;
+ bool title_centered = false;
+ bool title_outline = false;
+ int pause = 0;
+ bool image = false;
+ int image_slot = 0;
+ int image_time = 0;
+ bool outline = false;
};
struct StSequenceSettings {
-int speed = 0;
-bool finished = false;
+ int speed = 0;
+ bool finished = false;
};
-struct Single{
-int id = 0;
-int time = 0;
-int style = 0;
-int settings1 = 01;
-int settings2 = 0;
-bool bool_ = false;
+struct SingleStatic {
+ int id = 0;
+ int time = 0;
+ int style = 0;
+ int settings1 = 01;
+ int settings2 = 0;
+ bool bool_ = false;
};
typedef Common::Array<Credit> CreditArray;
typedef Common::Array<StCredit> StCreditArray;
struct State {
-CreditArray _credits[10];
-StCreditArray _stCredits[10];
-bool _creditsRunning = 0, _paused = 0, _staticCredits = 0;
-int _creditSequence = 0, _yPos = 0, _sequenceHeight = 0, _speedPoint = 0;
-int _calculatedSequenceHeight = 0, _timer = 0, _current= 0;
-int _numChars = 0, _timer2 = 0;
-int _emptyLineHeight = 10;
-int _strCredit[10];
-SequenceSettings _seqSettings[10];
-StSequenceSettings _stSeqSettings[10];
-Single_singleStatic;
-
-// Version 1.1 specific
-bool _resolutionFlag = false;
-int32 _screenWidth = 0, _screenHeight = 0, _screenColorDepth = 0;
-int32 _staticScreenWidth = 0;
-bool _staticWidthMatches = false;
+ CreditArray _credits[10];
+ StCreditArray _stCredits[10];
+ bool _creditsRunning = 0, _paused = 0, _staticCredits = 0;
+ int _creditSequence = 0, _yPos = 0, _sequenceHeight = 0, _speedPoint = 0;
+ int _calculatedSequenceHeight = 0, _timer = 0, _currentStatic = 0;
+ int _numChars = 0, _timer2 = 0;
+ int _emptyLineHeight = 10;
+ int _strCredit[10];
+ SequenceSettings _seqSettings[10];
+ StSequenceSettings _stSeqSettings[10];
+ SingleStatic _singleStatic;
+
+ // Version 1.1 specific
+ bool _resolutionFlag = false;
+ int32 _screenWidth = 0, _screenHeight = 0, _screenColorDepth = 0;
+ int32 _staticScreenWidth = 0;
+ bool _staticWidthMatches = false;
};
class AGSCreditz : public PluginBase, public Drawing {
private:
-int drawCredit(int sequence, int credit);
-void doCredits();
-int countLines(const Common::String &text);
-Common::String extractParameter(Common::String &line, const Common::String &separator);
-void specialEffect(int sequence, int credit, const Common::String &text,
- int font, int color, int32 x_pos);
-void drawStEffects(int sequence, int id, int style);
-void speeder(int sequence);
+ int drawCredit(int sequence, int credit);
+ void doCredits();
+ int countLines(const Common::String &text);
+ Common::String extractParameter(Common::String &line, const Common::String &separator);
+ void specialEffect(int sequence, int credit, const Common::String &text,
+ int font, int color, int32 x_pos);
+ void drawStEffects(int sequence, int id, int style);
+ void speeder(int sequence);
protected:
-enum Version {
- VERSION_11 = 11, VERSION_20 = 20
-};
+ enum Version {
+ VERSION_11 = 11, VERSION_20 = 20
+ };
-Version _version;
-State *_state;
-IAGSEngine *_engine;
-IntFunction _playSound;
+ Version _version;
+ State *_state;
+ IntFunction _playSound;
-void draw();
-void calculateSequenceHeight(int sequence);
-int VGACheck(int value);
-void startSequence(int sequence);
+ void draw();
+ void calculateSequenceHeight(int sequence);
+ int VGACheck(int value);
+ void startSequence(int sequence);
public:
-AGSCreditz();
-~AGSCreditz();
+ AGSCreditz();
+ virtual ~AGSCreditz();
};
} // namespace AGSCreditz
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz1.cpp b/engines/ags/plugins/ags_creditz/ags_creditz1.cpp
index 20970fd1db..5dc24507cb 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz1.cpp
+++ b/engines/ags/plugins/ags_creditz/ags_creditz1.cpp
@@ -31,10 +31,6 @@ const char *IMAGE_TEXT = "*i*m*a*g*e*";
AGSCreditz1::AGSCreditz1() : AGSCreditz() {
_version = VERSION_11;
-
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
- DLL_METHOD(AGS_EngineOnEvent);
}
const char *AGSCreditz1::AGS_GetPluginName() {
@@ -42,33 +38,33 @@ const char *AGSCreditz1::AGS_GetPluginName() {
}
void AGSCreditz1::AGS_EngineStartup(IAGSEngine *engine) {
- _engine = engine;
+ PluginBase::AGS_EngineStartup(engine);
engine->RequestEventHook(AGSE_POSTSCREENDRAW);
_engine->GetScreenDimensions(&_state->_screenWidth,
&_state->_screenHeight, &_state->_screenColorDepth);
- SCRIPT_METHOD(SetCredit);
- SCRIPT_METHOD(ScrollCredits);
- SCRIPT_METHOD(GetCredit);
- SCRIPT_METHOD(IsCreditScrollingFinished);
- SCRIPT_METHOD_EXT(IsFinished, IsCreditScrollingFinished);
- SCRIPT_METHOD(SetCreditImage);
- SCRIPT_METHOD(PauseScroll);
- SCRIPT_METHOD(ScrollReset);
- SCRIPT_METHOD(SetEmptyLineHeight);
- SCRIPT_METHOD(GetEmptyLineHeight);
- SCRIPT_METHOD(SetStaticCredit);
- SCRIPT_METHOD(GetStaticCredit);
- SCRIPT_METHOD(StartEndStaticCredits);
- SCRIPT_METHOD(GetCurrentStaticCredit);
- SCRIPT_METHOD(SetDefaultStaticDelay);
- SCRIPT_METHOD(SetStaticPause);
- SCRIPT_METHOD(SetStaticCreditTitle);
- SCRIPT_METHOD(ShowStaticCredit);
- SCRIPT_METHOD(StaticReset);
- SCRIPT_METHOD(GetStaticCreditTitle);
- SCRIPT_METHOD(SetStaticCreditImage);
- SCRIPT_METHOD(IsStaticCreditsFinished);
+ SCRIPT_METHOD(SetCredit, AGSCreditz1::SetCredit);
+ SCRIPT_METHOD(ScrollCredits, AGSCreditz1::ScrollCredits);
+ SCRIPT_METHOD(GetCredit, AGSCreditz1::GetCredit);
+ SCRIPT_METHOD(IsCreditScrollingFinished, AGSCreditz1::IsCreditScrollingFinished);
+ SCRIPT_METHOD(IsFinished, AGSCreditz1::IsCreditScrollingFinished);
+ SCRIPT_METHOD(SetCreditImage, AGSCreditz1::SetCreditImage);
+ SCRIPT_METHOD(PauseScroll, AGSCreditz1::PauseScroll);
+ SCRIPT_METHOD(ScrollReset, AGSCreditz1::ScrollReset);
+ SCRIPT_METHOD(SetEmptyLineHeight, AGSCreditz1::SetEmptyLineHeight);
+ SCRIPT_METHOD(GetEmptyLineHeight, AGSCreditz1::GetEmptyLineHeight);
+ SCRIPT_METHOD(SetStaticCredit, AGSCreditz1::SetStaticCredit);
+ SCRIPT_METHOD(GetStaticCredit, AGSCreditz1::GetStaticCredit);
+ SCRIPT_METHOD(StartEndStaticCredits, AGSCreditz1::StartEndStaticCredits);
+ SCRIPT_METHOD(GetCurrentStaticCredit, AGSCreditz1::GetCurrentStaticCredit);
+ SCRIPT_METHOD(SetDefaultStaticDelay, AGSCreditz1::SetDefaultStaticDelay);
+ SCRIPT_METHOD(SetStaticPause, AGSCreditz1::SetStaticPause);
+ SCRIPT_METHOD(SetStaticCreditTitle, AGSCreditz1::SetStaticCreditTitle);
+ SCRIPT_METHOD(ShowStaticCredit, AGSCreditz1::ShowStaticCredit);
+ SCRIPT_METHOD(StaticReset, AGSCreditz1::StaticReset);
+ SCRIPT_METHOD(GetStaticCreditTitle, AGSCreditz1::GetStaticCreditTitle);
+ SCRIPT_METHOD(SetStaticCreditImage, AGSCreditz1::SetStaticCreditImage);
+ SCRIPT_METHOD(IsStaticCreditsFinished, AGSCreditz1::IsStaticCreditsFinished);
}
int64 AGSCreditz1::AGS_EngineOnEvent(int event, NumberPtr data) {
@@ -215,7 +211,7 @@ void AGSCreditz1::StartEndStaticCredits(ScriptMethodParams ¶ms) {
_engine->AbortGame("StartEndStaticCredits: Wrong resolution");
} else {
- _state->_current= 0;
+ _state->_currentStatic = 0;
_engine->GetScreenDimensions(&_state->_screenWidth,
&_state->_screenHeight, &_state->_screenColorDepth);
@@ -271,7 +267,7 @@ void AGSCreditz1::ShowStaticCredit(ScriptMethodParams ¶ms) {
_state->_staticScreenWidth = (res == 1) ? 320 : 640;
_state->_staticWidthMatches = _state->_screenWidth == _state->_staticScreenWidth;
- _state->_current= ID;
+ _state->_currentStatic = ID;
// TODO: Final setup
}
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz1.h b/engines/ags/plugins/ags_creditz/ags_creditz1.h
index 9cc50b81df..0086879314 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz1.h
+++ b/engines/ags/plugins/ags_creditz/ags_creditz1.h
@@ -30,35 +30,36 @@ namespace Plugins {
namespace AGSCreditz {
class AGSCreditz1 : public AGSCreditz {
+ SCRIPT_HASH(AGSCreditz1)
private:
-const char *AGS_GetPluginName();
-void AGS_EngineStartup(IAGSEngine *engine) override;
-int64 AGS_EngineOnEvent(int event, NumberPtr data);
-
-void SetCredit(ScriptMethodParams ¶ms);
-void ScrollCredits(ScriptMethodParams ¶ms);
-void GetCredit(ScriptMethodParams ¶ms);
-void IsCreditScrollingFinished(ScriptMethodParams ¶ms);
-void SetCreditImage(ScriptMethodParams ¶ms);
-void PauseScroll(ScriptMethodParams ¶ms);
-void ScrollReset(ScriptMethodParams ¶ms);
-void SetEmptyLineHeight(ScriptMethodParams ¶ms);
-void GetEmptyLineHeight(ScriptMethodParams ¶ms);
-void SetStaticCredit(ScriptMethodParams ¶ms);
-void GetStaticCredit(ScriptMethodParams ¶ms);
-void StartEndStaticCredits(ScriptMethodParams ¶ms);
-void GetCurrentStaticCredit(ScriptMethodParams ¶ms);
-void SetDefaultStaticDelay(ScriptMethodParams ¶ms);
-void SetStaticPause(ScriptMethodParams ¶ms);
-void SetStaticCreditTitle(ScriptMethodParams ¶ms);
-void ShowStaticCredit(ScriptMethodParams ¶ms);
-void StaticReset(ScriptMethodParams ¶ms);
-void GetStaticCreditTitle(ScriptMethodParams ¶ms);
-void SetStaticCreditImage(ScriptMethodParams ¶ms);
-void IsStaticCreditsFinished(ScriptMethodParams ¶ms);
+ void SetCredit(ScriptMethodParams ¶ms);
+ void ScrollCredits(ScriptMethodParams ¶ms);
+ void GetCredit(ScriptMethodParams ¶ms);
+ void IsCreditScrollingFinished(ScriptMethodParams ¶ms);
+ void SetCreditImage(ScriptMethodParams ¶ms);
+ void PauseScroll(ScriptMethodParams ¶ms);
+ void ScrollReset(ScriptMethodParams ¶ms);
+ void SetEmptyLineHeight(ScriptMethodParams ¶ms);
+ void GetEmptyLineHeight(ScriptMethodParams ¶ms);
+ void SetStaticCredit(ScriptMethodParams ¶ms);
+ void GetStaticCredit(ScriptMethodParams ¶ms);
+ void StartEndStaticCredits(ScriptMethodParams ¶ms);
+ void GetCurrentStaticCredit(ScriptMethodParams ¶ms);
+ void SetDefaultStaticDelay(ScriptMethodParams ¶ms);
+ void SetStaticPause(ScriptMethodParams ¶ms);
+ void SetStaticCreditTitle(ScriptMethodParams ¶ms);
+ void ShowStaticCredit(ScriptMethodParams ¶ms);
+ void StaticReset(ScriptMethodParams ¶ms);
+ void GetStaticCreditTitle(ScriptMethodParams ¶ms);
+ void SetStaticCreditImage(ScriptMethodParams ¶ms);
+ void IsStaticCreditsFinished(ScriptMethodParams ¶ms);
public:
-AGSCreditz1();
+ AGSCreditz1();
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *engine) override;
+ int64 AGS_EngineOnEvent(int event, NumberPtr data) override;
};
} // namespace AGSCreditz
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz2.cpp b/engines/ags/plugins/ags_creditz/ags_creditz2.cpp
index bbd88e67d2..63162ca04a 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz2.cpp
+++ b/engines/ags/plugins/ags_creditz/ags_creditz2.cpp
@@ -28,10 +28,6 @@ namespace AGSCreditz {
AGSCreditz2::AGSCreditz2() : AGSCreditz() {
_version = VERSION_20;
-
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
- DLL_METHOD(AGS_EngineOnEvent);
}
const char *AGSCreditz2::AGS_GetPluginName() {
@@ -39,28 +35,28 @@ const char *AGSCreditz2::AGS_GetPluginName() {
}
void AGSCreditz2::AGS_EngineStartup(IAGSEngine *engine) {
- _engine = engine;
+ PluginBase::AGS_EngineStartup(engine);
_playSound = (IntFunction)_engine->GetScriptFunctionAddress("PlaySound");
engine->RequestEventHook(AGSE_POSTSCREENDRAW);
- SCRIPT_METHOD(RunCreditSequence);
- SCRIPT_METHOD(SetCredit);
- SCRIPT_METHOD(GetCredit);
- SCRIPT_METHOD(CreditsSettings);
- SCRIPT_METHOD(SequenceSettings);
- SCRIPT_METHOD(IsSequenceFinished);
- SCRIPT_METHOD(PauseScrolling);
- SCRIPT_METHOD(SetCreditImage);
- SCRIPT_METHOD(ResetSequence);
-
- SCRIPT_METHOD(SetStaticCredit);
- SCRIPT_METHOD(SetStaticCreditTitle);
- SCRIPT_METHOD(SetStaticPause);
- SCRIPT_METHOD(RunStaticCreditSequence);
- SCRIPT_METHOD(IsStaticSequenceFinished);
- SCRIPT_METHOD(ShowStaticCredit);
- SCRIPT_METHOD(SetStaticImage);
- SCRIPT_METHOD(GetCurrentStaticCredit);
+ SCRIPT_METHOD(RunCreditSequence, AGSCreditz2::RunCreditSequence);
+ SCRIPT_METHOD(SetCredit, AGSCreditz2::SetCredit);
+ SCRIPT_METHOD(GetCredit, AGSCreditz2::GetCredit);
+ SCRIPT_METHOD(CreditsSettings, AGSCreditz2::CreditsSettings);
+ SCRIPT_METHOD(SequenceSettings, AGSCreditz2::SequenceSettings);
+ SCRIPT_METHOD(IsSequenceFinished, AGSCreditz2::IsSequenceFinished);
+ SCRIPT_METHOD(PauseScrolling, AGSCreditz2::PauseScrolling);
+ SCRIPT_METHOD(SetCreditImage, AGSCreditz2::SetCreditImage);
+ SCRIPT_METHOD(ResetSequence, AGSCreditz2::ResetSequence);
+
+ SCRIPT_METHOD(SetStaticCredit, AGSCreditz2::SetStaticCredit);
+ SCRIPT_METHOD(SetStaticCreditTitle, AGSCreditz2::SetStaticCreditTitle);
+ SCRIPT_METHOD(SetStaticPause, AGSCreditz2::SetStaticPause);
+ SCRIPT_METHOD(RunStaticCreditSequence, AGSCreditz2::RunStaticCreditSequence);
+ SCRIPT_METHOD(IsStaticSequenceFinished, AGSCreditz2::IsStaticSequenceFinished);
+ SCRIPT_METHOD(ShowStaticCredit, AGSCreditz2::ShowStaticCredit);
+ SCRIPT_METHOD(SetStaticImage, AGSCreditz2::SetStaticImage);
+ SCRIPT_METHOD(GetCurrentStaticCredit, AGSCreditz2::GetCurrentStaticCredit);
}
int64 AGSCreditz2::AGS_EngineOnEvent(int event, NumberPtr data) {
@@ -215,7 +211,7 @@ void AGSCreditz2::RunStaticCreditSequence(ScriptMethodParams ¶ms) {
_state->_creditSequence = sequence;
_state->_staticCredits = true;
_state->_creditsRunning = true;
- _state->_current= 1;
+ _state->_currentStatic = 1;
_state->_timer = 0;
draw();
@@ -224,7 +220,7 @@ void AGSCreditz2::RunStaticCreditSequence(ScriptMethodParams ¶ms) {
_state->_creditSequence = -1;
_state->_stSeqSettings[sequence].finished = false;
_state->_creditsRunning = false;
- _state->_current= 0;
+ _state->_currentStatic = 0;
_state->_timer = 0;
}
}
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz2.h b/engines/ags/plugins/ags_creditz/ags_creditz2.h
index a5c4493986..643a629808 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz2.h
+++ b/engines/ags/plugins/ags_creditz/ags_creditz2.h
@@ -30,32 +30,33 @@ namespace Plugins {
namespace AGSCreditz {
class AGSCreditz2 : public AGSCreditz {
+ SCRIPT_HASH(AGSCreditz2)
private:
-const char *AGS_GetPluginName();
-void AGS_EngineStartup(IAGSEngine *engine) override;
-int64 AGS_EngineOnEvent(int event, NumberPtr data);
+ void RunCreditSequence(ScriptMethodParams ¶ms);
+ void SetCredit(ScriptMethodParams ¶ms);
+ void GetCredit(ScriptMethodParams ¶ms);
+ void CreditsSettings(ScriptMethodParams ¶ms);
+ void SequenceSettings(ScriptMethodParams ¶ms);
+ void IsSequenceFinished(ScriptMethodParams ¶ms);
+ void PauseScrolling(ScriptMethodParams ¶ms);
+ void SetCreditImage(ScriptMethodParams ¶ms);
+ void ResetSequence(ScriptMethodParams ¶ms);
-void RunCreditSequence(ScriptMethodParams ¶ms);
-void SetCredit(ScriptMethodParams ¶ms);
-void GetCredit(ScriptMethodParams ¶ms);
-void CreditsSettings(ScriptMethodParams ¶ms);
-void SequenceSettings(ScriptMethodParams ¶ms);
-void IsSequenceFinished(ScriptMethodParams ¶ms);
-void PauseScrolling(ScriptMethodParams ¶ms);
-void SetCreditImage(ScriptMethodParams ¶ms);
-void ResetSequence(ScriptMethodParams ¶ms);
-
-void SetStaticCredit(ScriptMethodParams ¶ms);
-void SetStaticCreditTitle(ScriptMethodParams ¶ms);
-void SetStaticPause(ScriptMethodParams ¶ms);
-void RunStaticCreditSequence(ScriptMethodParams ¶ms);
-void IsStaticSequenceFinished(ScriptMethodParams ¶ms);
-void ShowStaticCredit(ScriptMethodParams ¶ms);
-void SetStaticImage(ScriptMethodParams ¶ms);
-void GetCurrentStaticCredit(ScriptMethodParams ¶ms);
+ void SetStaticCredit(ScriptMethodParams ¶ms);
+ void SetStaticCreditTitle(ScriptMethodParams ¶ms);
+ void SetStaticPause(ScriptMethodParams ¶ms);
+ void RunStaticCreditSequence(ScriptMethodParams ¶ms);
+ void IsStaticSequenceFinished(ScriptMethodParams ¶ms);
+ void ShowStaticCredit(ScriptMethodParams ¶ms);
+ void SetStaticImage(ScriptMethodParams ¶ms);
+ void GetCurrentStaticCredit(ScriptMethodParams ¶ms);
public:
-AGSCreditz2();
+ AGSCreditz2();
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *engine) override;
+ int64 AGS_EngineOnEvent(int event, NumberPtr data) override;
};
} // namespace AGSCreditz
diff --git a/engines/ags/plugins/ags_fire/ags_fire.cpp b/engines/ags/plugins/ags_fire/ags_fire.cpp
index 42bf0baf46..bb042a2ce3 100644
--- a/engines/ags/plugins/ags_fire/ags_fire.cpp
+++ b/engines/ags/plugins/ags_fire/ags_fire.cpp
@@ -26,30 +26,21 @@ namespace AGS3 {
namespace Plugins {
namespace AGSFire {
-IAGSEngine *AGSFire::_engine;
-
-AGSFire::AGSFire() : PluginBase() {
- _engine = nullptr;
-
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
-}
-
const char *AGSFire::AGS_GetPluginName() {
return "Fire Plugin stub (ags_fire.dll)";
}
void AGSFire::AGS_EngineStartup(IAGSEngine *engine) {
- _engine = engine;
-
- SCRIPT_METHOD(FireAddObject);
- SCRIPT_METHOD(FirePreHeat);
- SCRIPT_METHOD(FireDisableSeeding);
- SCRIPT_METHOD(FireEnableSeeding);
- SCRIPT_METHOD(FireSetStrength);
- SCRIPT_METHOD(FireRemoveObject);
- SCRIPT_METHOD(FireUpdate);
- SCRIPT_METHOD(FireStop);
+ PluginBase::AGS_EngineStartup(engine);
+
+ SCRIPT_METHOD(FireAddObject, AGSFire::FireAddObject);
+ SCRIPT_METHOD(FirePreHeat, AGSFire::FirePreHeat);
+ SCRIPT_METHOD(FireDisableSeeding, AGSFire::FireDisableSeeding);
+ SCRIPT_METHOD(FireEnableSeeding, AGSFire::FireEnableSeeding);
+ SCRIPT_METHOD(FireSetStrength, AGSFire::FireSetStrength);
+ SCRIPT_METHOD(FireRemoveObject, AGSFire::FireRemoveObject);
+ SCRIPT_METHOD(FireUpdate, AGSFire::FireUpdate);
+ SCRIPT_METHOD(FireStop, AGSFire::FireStop);
}
void AGSFire::FireAddObject(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/ags_fire/ags_fire.h b/engines/ags/plugins/ags_fire/ags_fire.h
index c19ce42b7b..31a892b662 100644
--- a/engines/ags/plugins/ags_fire/ags_fire.h
+++ b/engines/ags/plugins/ags_fire/ags_fire.h
@@ -23,18 +23,14 @@
#ifndef AGS_PLUGINS_AGS_FIRE_AGS_FIRE_H
#define AGS_PLUGINS_AGS_FIRE_AGS_FIRE_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace AGSFire {
class AGSFire : public PluginBase {
-private:
- IAGSEngine *_engine;
- const char *AGS_GetPluginName();
- void AGS_EngineStartup(IAGSEngine *engine) override;
-
+ SCRIPT_HASH(AGSFire)
private:
void FireAddObject(ScriptMethodParams ¶ms);
void FirePreHeat(ScriptMethodParams ¶ms);
@@ -46,7 +42,11 @@ private:
void FireStop(ScriptMethodParams ¶ms);
public:
- AGSFire();
+ AGSFire() : PluginBase() {}
+ virtual ~AGSFire() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *engine) override;
};
} // namespace AGSFire
diff --git a/engines/ags/plugins/ags_flashlight/ags_flashlight.cpp b/engines/ags/plugins/ags_flashlight/ags_flashlight.cpp
index 39189d4446..89ac4da79b 100644
--- a/engines/ags/plugins/ags_flashlight/ags_flashlight.cpp
+++ b/engines/ags/plugins/ags_flashlight/ags_flashlight.cpp
@@ -33,133 +33,51 @@ const uint32 Magic = 0xBABE0000;
const uint32 Version = 2;
const uint32 SaveMagic = Magic + Version;
-int32 AGSFlashlight::AGSFlashlight::screen_width = 320;
-int32 AGSFlashlight::screen_height = 200;
-int32 AGSFlashlight::screen_color_depth = 16;
-
-bool AGSFlashlight::g_BitmapMustBeUpdated = true;
-
-int AGSFlashlight::g_RedTint = 0;
-int AGSFlashlight::g_GreenTint = 0;
-int AGSFlashlight::g_BlueTint = 0;
-
-int AGSFlashlight::g_DarknessLightLevel = 100;
-int AGSFlashlight::g_BrightnessLightLevel = 100;
-int AGSFlashlight::g_DarknessSize = 0;
-int AGSFlashlight::g_DarknessDiameter = 0;
-int AGSFlashlight::g_BrightnessSize = 0;
-
-int32 AGSFlashlight::g_FlashlightX = 0;
-int32 AGSFlashlight::g_FlashlightY = 0;
-int32 AGSFlashlight::g_FlashlightDrawAtX = 0;
-int32 AGSFlashlight::g_FlashlightDrawAtY = 0;
-
-bool AGSFlashlight::g_FlashlightFollowMouse = false;
-
-int AGSFlashlight::g_FollowCharacterId = 0;
-int AGSFlashlight::g_FollowCharacterDx = 0;
-int AGSFlashlight::g_FollowCharacterDy = 0;
-int AGSFlashlight::g_FollowCharacterHorz = 0;
-int AGSFlashlight::g_FollowCharacterVert = 0;
-
-AGSCharacter *AGSFlashlight::g_FollowCharacter = nullptr;
-
-BITMAP *AGSFlashlight::g_LightBitmap = nullptr;
-
-uint32 AGSFlashlight::flashlight_x;
-uint32 AGSFlashlight::flashlight_n;
-
-
-IAGSEngine *AGSFlashlight::_engine;
-
-AGSFlashlight::AGSFlashlight() : PluginBase() {
- _engine = nullptr;
- screen_width = 320;
- screen_height = 200;
- screen_color_depth = 16;
-
- g_BitmapMustBeUpdated = true;
-
- g_RedTint = 0;
- g_GreenTint = 0;
- g_BlueTint = 0;
-
- g_DarknessLightLevel = 100;
- g_BrightnessLightLevel = 100;
- g_DarknessSize = 0;
- g_DarknessDiameter = 0;
- g_BrightnessSize = 0;
-
- g_FlashlightX = 0;
- g_FlashlightY = 0;
- g_FlashlightDrawAtX = 0;
- g_FlashlightDrawAtY = 0;
-
- g_FlashlightFollowMouse = false;
-
- g_FollowCharacterId = 0;
- g_FollowCharacterDx = 0;
- g_FollowCharacterDy = 0;
- g_FollowCharacterHorz = 0;
- g_FollowCharacterVert = 0;
-
- g_FollowCharacter = nullptr;
- g_LightBitmap = nullptr;
- flashlight_x = 0;
- flashlight_n = 0;
-
-
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
- DLL_METHOD(AGS_EngineShutdown);
- DLL_METHOD(AGS_EngineOnEvent);
-}
-
const char *AGSFlashlight::AGS_GetPluginName() {
return "Flashlight plugin recreation";
}
void AGSFlashlight::AGS_EngineStartup(IAGSEngine *engine) {
- _engine = engine;
+ PluginBase::AGS_EngineStartup(engine);
if (_engine->version < 13)
_engine->AbortGame("Engine interface is too old, need newer version of AGS.");
- SCRIPT_METHOD(SetFlashlightTint);
- SCRIPT_METHOD(GetFlashlightTintRed);
- SCRIPT_METHOD(GetFlashlightTintGreen);
- SCRIPT_METHOD(GetFlashlightTintBlue);
+ SCRIPT_METHOD(SetFlashlightTint, AGSFlashlight::SetFlashlightTint);
+ SCRIPT_METHOD(GetFlashlightTintRed, AGSFlashlight::GetFlashlightTintRed);
+ SCRIPT_METHOD(GetFlashlightTintGreen, AGSFlashlight::GetFlashlightTintGreen);
+ SCRIPT_METHOD(GetFlashlightTintBlue, AGSFlashlight::GetFlashlightTintBlue);
- SCRIPT_METHOD(GetFlashlightMinLightLevel);
- SCRIPT_METHOD(GetFlashlightMaxLightLevel);
+ SCRIPT_METHOD(GetFlashlightMinLightLevel, AGSFlashlight::GetFlashlightMinLightLevel);
+ SCRIPT_METHOD(GetFlashlightMaxLightLevel, AGSFlashlight::GetFlashlightMaxLightLevel);
- SCRIPT_METHOD(SetFlashlightDarkness);
- SCRIPT_METHOD(GetFlashlightDarkness);
- SCRIPT_METHOD(SetFlashlightDarknessSize);
- SCRIPT_METHOD(GetFlashlightDarknessSize);
+ SCRIPT_METHOD(SetFlashlightDarkness, AGSFlashlight::SetFlashlightDarkness);
+ SCRIPT_METHOD(GetFlashlightDarkness, AGSFlashlight::GetFlashlightDarkness);
+ SCRIPT_METHOD(SetFlashlightDarknessSize, AGSFlashlight::SetFlashlightDarknessSize);
+ SCRIPT_METHOD(GetFlashlightDarknessSize, AGSFlashlight::GetFlashlightDarknessSize);
- SCRIPT_METHOD(SetFlashlightBrightness);
- SCRIPT_METHOD(GetFlashlightBrightness);
- SCRIPT_METHOD(SetFlashlightBrightnessSize);
- SCRIPT_METHOD(GetFlashlightBrightnessSize);
+ SCRIPT_METHOD(SetFlashlightBrightness, AGSFlashlight::SetFlashlightBrightness);
+ SCRIPT_METHOD(GetFlashlightBrightness, AGSFlashlight::GetFlashlightBrightness);
+ SCRIPT_METHOD(SetFlashlightBrightnessSize, AGSFlashlight::SetFlashlightBrightnessSize);
+ SCRIPT_METHOD(GetFlashlightBrightnessSize, AGSFlashlight::GetFlashlightBrightnessSize);
- SCRIPT_METHOD(SetFlashlightPosition);
- SCRIPT_METHOD(GetFlashlightPositionX);
- SCRIPT_METHOD(GetFlashlightPositionY);
+ SCRIPT_METHOD(SetFlashlightPosition, AGSFlashlight::SetFlashlightPosition);
+ SCRIPT_METHOD(GetFlashlightPositionX, AGSFlashlight::GetFlashlightPositionX);
+ SCRIPT_METHOD(GetFlashlightPositionY, AGSFlashlight::GetFlashlightPositionY);
- SCRIPT_METHOD(SetFlashlightFollowMouse);
- SCRIPT_METHOD(GetFlashlightFollowMouse);
+ SCRIPT_METHOD(SetFlashlightFollowMouse, AGSFlashlight::SetFlashlightFollowMouse);
+ SCRIPT_METHOD(GetFlashlightFollowMouse, AGSFlashlight::GetFlashlightFollowMouse);
- SCRIPT_METHOD(SetFlashlightFollowCharacter);
- SCRIPT_METHOD(GetFlashlightFollowCharacter);
- SCRIPT_METHOD(GetFlashlightCharacterDX);
- SCRIPT_METHOD(GetFlashlightCharacterDY);
- SCRIPT_METHOD(GetFlashlightCharacterHorz);
- SCRIPT_METHOD(GetFlashlightCharacterVert);
+ SCRIPT_METHOD(SetFlashlightFollowCharacter, AGSFlashlight::SetFlashlightFollowCharacter);
+ SCRIPT_METHOD(GetFlashlightFollowCharacter, AGSFlashlight::GetFlashlightFollowCharacter);
+ SCRIPT_METHOD(GetFlashlightCharacterDX, AGSFlashlight::GetFlashlightCharacterDX);
+ SCRIPT_METHOD(GetFlashlightCharacterDY, AGSFlashlight::GetFlashlightCharacterDY);
+ SCRIPT_METHOD(GetFlashlightCharacterHorz, AGSFlashlight::GetFlashlightCharacterHorz);
+ SCRIPT_METHOD(GetFlashlightCharacterVert, AGSFlashlight::GetFlashlightCharacterVert);
- SCRIPT_METHOD(SetFlashlightMask);
- SCRIPT_METHOD(GetFlashlightMask);
+ SCRIPT_METHOD(SetFlashlightMask, AGSFlashlight::SetFlashlightMask);
+ SCRIPT_METHOD(GetFlashlightMask, AGSFlashlight::GetFlashlightMask);
_engine->RequestEventHook(AGSE_PREGUIDRAW);
_engine->RequestEventHook(AGSE_PRESCREENDRAW);
@@ -167,9 +85,6 @@ void AGSFlashlight::AGS_EngineStartup(IAGSEngine *engine) {
_engine->RequestEventHook(AGSE_RESTOREGAME);
}
-void AGSFlashlight::AGS_EngineShutdown() {
-}
-
int64 AGSFlashlight::AGS_EngineOnEvent(int event, NumberPtr data) {
if (event == AGSE_PREGUIDRAW) {
Update();
diff --git a/engines/ags/plugins/ags_flashlight/ags_flashlight.h b/engines/ags/plugins/ags_flashlight/ags_flashlight.h
index 0dc4fb9738..a63ad61a87 100644
--- a/engines/ags/plugins/ags_flashlight/ags_flashlight.h
+++ b/engines/ags/plugins/ags_flashlight/ags_flashlight.h
@@ -23,7 +23,7 @@
#ifndef AGS_PLUGINS_AGSFLASHLIGHT_AGSFLASHLIGHT_H
#define AGS_PLUGINS_AGSFLASHLIGHT_AGSFLASHLIGHT_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
#include "ags/plugins/serializer.h"
#include "ags/lib/allegro.h"
@@ -36,88 +36,87 @@ namespace AGSFlashlight {
* but a workalike plugin originally created for the AGS engine PSP port.
*/
class AGSFlashlight : public PluginBase {
+ SCRIPT_HASH(AGSFlashlight)
private:
-IAGSEngine *_engine;
-int32 screen_width;
-int32 screen_height;
-int32 screen_color_depth;
-bool g_BitmapMustBeUpdated;
-int g_RedTint;
-int g_GreenTint;
-int g_BlueTint;
-int g_DarknessLightLevel;
-int g_BrightnessLightLevel;
-int g_DarknessSize;
-int g_DarknessDiameter;
-int g_BrightnessSize;
-int32 g_FlashlightX;
-int32 g_FlashlightY;
-int32 g_FlashlightDrawAtX;
-int32 g_FlashlightDrawAtY;
-bool g_FlashlightFollowMouse;
-int g_FollowCharacterId;
-int g_FollowCharacterDx;
-int g_FollowCharacterDy;
-int g_FollowCharacterHorz;
-int g_FollowCharacterVert;
-AGSCharacter *g_FollowCharacter;
-BITMAP *g_LightBitmap;
-uint32 flashlight_x, flashlight_n;
+ int32 screen_width = 320;
+ int32 screen_height = 200;
+ int32 screen_color_depth = 16;
+ bool g_BitmapMustBeUpdated = true;
+ int g_RedTint = 0;
+ int g_GreenTint = 0;
+ int g_BlueTint = 0;
+ int g_DarknessLightLevel = 100;
+ int g_BrightnessLightLevel = 100;
+ int g_DarknessSize = 0;
+ int g_DarknessDiameter = 0;
+ int g_BrightnessSize = 0;
+ int32 g_FlashlightX = 0;
+ int32 g_FlashlightY = 0;
+ int32 g_FlashlightDrawAtX = 0;
+ int32 g_FlashlightDrawAtY = 0;
+ bool g_FlashlightFollowMouse = false;
+ int g_FollowCharacterId = 0;
+ int g_FollowCharacterDx = 0;
+ int g_FollowCharacterDy = 0;
+ int g_FollowCharacterHorz = 0;
+ int g_FollowCharacterVert = 0;
+ AGSCharacter *g_FollowCharacter = nullptr;
+ BITMAP *g_LightBitmap = nullptr;
+ uint32 flashlight_x = 0, flashlight_n = 0;
private:
-const char *AGS_GetPluginName();
-void AGS_EngineStartup(IAGSEngine *engine) override;
-void AGS_EngineShutdown();
-int64 AGS_EngineOnEvent(int event, NumberPtr data);
+ /**
+ * This function is from Allegro, split for more performance.
+ * Combines a 32 bit RGBA sprite with a 16 bit RGB destination, optimised
+ * for when one pixel is in an RGB layout and the other is BGR.
+ */
+ inline uint32 _blender_alpha16_bgr(uint32 y);
+ inline void calc_x_n(uint32 x);
+ inline void setPixel(int x, int y, uint32 color, uint32 *pixel);
+ void plotCircle(int xm, int ym, int r, uint32 color);
+ void ClipToRange(int &variable, int min, int max);
+ void AlphaBlendBitmap();
+ void DrawTint();
+ void DrawDarkness();
+ void CreateLightBitmap();
+ void Update();
+ uint32 blendPixel(uint32 col, bool isAlpha24, int light);
+ void syncGame(Serializer &s);
-private:
-/**
- * This function is from Allegro, split for more performance.
- * Combines a 32 bit RGBA sprite with a 16 bit RGB destination, optimised
- * for when one pixel is in an RGB layout and the other is BGR.
- */
-inline uint32 _blender_alpha16_bgr(uint32 y);
-inline void calc_x_n(uint32 x);
-inline void setPixel(int x, int y, uint32 color, uint32 *pixel);
-void plotCircle(int xm, int ym, int r, uint32 color);
-void ClipToRange(int &variable, int min, int max);
-void AlphaBlendBitmap();
-void DrawTint();
-void DrawDarkness();
-void CreateLightBitmap();
-void Update();
-uint32 blendPixel(uint32 col, bool isAlpha24, int light);
-void syncGame(Serializer &s);
-
-void SetFlashlightTint(ScriptMethodParams ¶ms);
-void GetFlashlightTintRed(ScriptMethodParams ¶ms);
-void GetFlashlightTintGreen(ScriptMethodParams ¶ms);
-void GetFlashlightTintBlue(ScriptMethodParams ¶ms);
-void GetFlashlightMinLightLevel(ScriptMethodParams ¶ms);
-void GetFlashlightMaxLightLevel(ScriptMethodParams ¶ms);
-void SetFlashlightDarkness(ScriptMethodParams ¶ms);
-void GetFlashlightDarkness(ScriptMethodParams ¶ms);
-void SetFlashlightDarknessSize(ScriptMethodParams ¶ms);
-void GetFlashlightDarknessSize(ScriptMethodParams ¶ms);
-void SetFlashlightBrightness(ScriptMethodParams ¶ms);
-void GetFlashlightBrightness(ScriptMethodParams ¶ms);
-void SetFlashlightBrightnessSize(ScriptMethodParams ¶ms);
-void GetFlashlightBrightnessSize(ScriptMethodParams ¶ms);
-void SetFlashlightPosition(ScriptMethodParams ¶ms);
-void GetFlashlightPositionX(ScriptMethodParams ¶ms);
-void GetFlashlightPositionY(ScriptMethodParams ¶ms);
-void SetFlashlightFollowMouse(ScriptMethodParams ¶ms);
-void GetFlashlightFollowMouse(ScriptMethodParams ¶ms);
-void SetFlashlightFollowCharacter(ScriptMethodParams ¶ms);
-void GetFlashlightFollowCharacter(ScriptMethodParams ¶ms);
-void GetFlashlightCharacterDX(ScriptMethodParams ¶ms);
-void GetFlashlightCharacterDY(ScriptMethodParams ¶ms);
-void GetFlashlightCharacterHorz(ScriptMethodParams ¶ms);
-void GetFlashlightCharacterVert(ScriptMethodParams ¶ms);
-void SetFlashlightMask(ScriptMethodParams ¶ms);
-void GetFlashlightMask(ScriptMethodParams ¶ms);
+ void SetFlashlightTint(ScriptMethodParams ¶ms);
+ void GetFlashlightTintRed(ScriptMethodParams ¶ms);
+ void GetFlashlightTintGreen(ScriptMethodParams ¶ms);
+ void GetFlashlightTintBlue(ScriptMethodParams ¶ms);
+ void GetFlashlightMinLightLevel(ScriptMethodParams ¶ms);
+ void GetFlashlightMaxLightLevel(ScriptMethodParams ¶ms);
+ void SetFlashlightDarkness(ScriptMethodParams ¶ms);
+ void GetFlashlightDarkness(ScriptMethodParams ¶ms);
+ void SetFlashlightDarknessSize(ScriptMethodParams ¶ms);
+ void GetFlashlightDarknessSize(ScriptMethodParams ¶ms);
+ void SetFlashlightBrightness(ScriptMethodParams ¶ms);
+ void GetFlashlightBrightness(ScriptMethodParams ¶ms);
+ void SetFlashlightBrightnessSize(ScriptMethodParams ¶ms);
+ void GetFlashlightBrightnessSize(ScriptMethodParams ¶ms);
+ void SetFlashlightPosition(ScriptMethodParams ¶ms);
+ void GetFlashlightPositionX(ScriptMethodParams ¶ms);
+ void GetFlashlightPositionY(ScriptMethodParams ¶ms);
+ void SetFlashlightFollowMouse(ScriptMethodParams ¶ms);
+ void GetFlashlightFollowMouse(ScriptMethodParams ¶ms);
+ void SetFlashlightFollowCharacter(ScriptMethodParams ¶ms);
+ void GetFlashlightFollowCharacter(ScriptMethodParams ¶ms);
+ void GetFlashlightCharacterDX(ScriptMethodParams ¶ms);
+ void GetFlashlightCharacterDY(ScriptMethodParams ¶ms);
+ void GetFlashlightCharacterHorz(ScriptMethodParams ¶ms);
+ void GetFlashlightCharacterVert(ScriptMethodParams ¶ms);
+ void SetFlashlightMask(ScriptMethodParams ¶ms);
+ void GetFlashlightMask(ScriptMethodParams ¶ms);
public:
-AGSFlashlight();
+ AGSFlashlight() : PluginBase() {}
+ virtual ~AGSFlashlight() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *engine) override;
+ int64 AGS_EngineOnEvent(int event, NumberPtr data) override;
};
} // namespace AGSFlashlight
diff --git a/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.cpp b/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.cpp
index 84afb13755..9e877a118e 100644
--- a/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.cpp
+++ b/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.cpp
@@ -29,32 +29,30 @@ namespace AGS3 {
namespace Plugins {
namespace AGSGalaxySteam {
-AGS2Client::AGS2Client() : PluginBase() {
- DLL_METHOD(AGS_EngineStartup);
-}
-
void AGS2Client::AGS_EngineStartup(IAGSEngine *engine) {
- SCRIPT_METHOD_EXT(AGS2Client::IsAchievementAchieved^1, IsAchievementAchieved);
- SCRIPT_METHOD_EXT(AGS2Client::SetAchievementAchieved^1, SetAchievementAchieved);
- SCRIPT_METHOD_EXT(AGS2Client::ResetAchievement^1, ResetAchievement);
- SCRIPT_METHOD_EXT(AGS2Client::GetIntStat^1, GetIntStat);
- SCRIPT_METHOD_EXT(AGS2Client::GetFloatStat^1, GetFloatStat);
- SCRIPT_METHOD_EXT(AGS2Client::GetAverageRateStat^1, GetAverageRateStat);
- SCRIPT_METHOD_EXT(AGS2Client::SetIntStat^2, SetIntStat);
- SCRIPT_METHOD_EXT(AGS2Client::SetFloatStat^2, SetFloatStat);
- SCRIPT_METHOD_EXT(AGS2Client::UpdateAverageRateStat^3, UpdateAverageRateStat);
- SCRIPT_METHOD_EXT(AGS2Client::ResetStatsAndAchievements^0, ResetStatsAndAchievements);
- SCRIPT_METHOD_EXT(AGS2Client::get_Initialized, get_Initialized);
- SCRIPT_METHOD_EXT(AGS2Client::get_CurrentLeaderboardName, get_CurrentLeaderboardName);
- SCRIPT_METHOD_EXT(AGS2Client::RequestLeaderboard^3, RequestLeaderboard);
- SCRIPT_METHOD_EXT(AGS2Client::UploadScore^1, UploadScore);
- SCRIPT_METHOD_EXT(AGS2Client::geti_LeaderboardNames, geti_LeaderboardNames);
- SCRIPT_METHOD_EXT(AGS2Client::geti_LeaderboardScores, geti_LeaderboardScores);
- SCRIPT_METHOD_EXT(AGS2Client::get_LeaderboardCount, get_LeaderboardCount);
- SCRIPT_METHOD_EXT(AGS2Client::GetUserName^0, GetUserName);
- SCRIPT_METHOD_EXT(AGS2Client::GetCurrentGameLanguage^0, GetCurrentGameLanguage);
- SCRIPT_METHOD_EXT(AGS2Client::FindLeaderboard^1, FindLeaderboard);
- SCRIPT_METHOD_EXT(AGS2Client::Initialize^2, Initialize);
+ PluginBase::AGS_EngineStartup(engine);
+
+ SCRIPT_METHOD(AGS2Client::IsAchievementAchieved^1, AGS2Client::IsAchievementAchieved);
+ SCRIPT_METHOD(AGS2Client::SetAchievementAchieved^1, AGS2Client::SetAchievementAchieved);
+ SCRIPT_METHOD(AGS2Client::ResetAchievement^1, AGS2Client::ResetAchievement);
+ SCRIPT_METHOD(AGS2Client::GetIntStat^1, AGS2Client::GetIntStat);
+ SCRIPT_METHOD(AGS2Client::GetFloatStat^1, AGS2Client::GetFloatStat);
+ SCRIPT_METHOD(AGS2Client::GetAverageRateStat^1, AGS2Client::GetAverageRateStat);
+ SCRIPT_METHOD(AGS2Client::SetIntStat^2, AGS2Client::SetIntStat);
+ SCRIPT_METHOD(AGS2Client::SetFloatStat^2, AGS2Client::SetFloatStat);
+ SCRIPT_METHOD(AGS2Client::UpdateAverageRateStat^3, AGS2Client::UpdateAverageRateStat);
+ SCRIPT_METHOD(AGS2Client::ResetStatsAndAchievements^0, AGS2Client::ResetStatsAndAchievements);
+ SCRIPT_METHOD(AGS2Client::get_Initialized, AGS2Client::get_Initialized);
+ SCRIPT_METHOD(AGS2Client::get_CurrentLeaderboardName, AGS2Client::get_CurrentLeaderboardName);
+ SCRIPT_METHOD(AGS2Client::RequestLeaderboard^3, AGS2Client::RequestLeaderboard);
+ SCRIPT_METHOD(AGS2Client::UploadScore^1, AGS2Client::UploadScore);
+ SCRIPT_METHOD(AGS2Client::geti_LeaderboardNames, AGS2Client::geti_LeaderboardNames);
+ SCRIPT_METHOD(AGS2Client::geti_LeaderboardScores, AGS2Client::geti_LeaderboardScores);
+ SCRIPT_METHOD(AGS2Client::get_LeaderboardCount, AGS2Client::get_LeaderboardCount);
+ SCRIPT_METHOD(AGS2Client::GetUserName^0, AGS2Client::GetUserName);
+ SCRIPT_METHOD(AGS2Client::GetCurrentGameLanguage^0, AGS2Client::GetCurrentGameLanguage);
+ SCRIPT_METHOD(AGS2Client::FindLeaderboard^1, AGS2Client::FindLeaderboard);
+ SCRIPT_METHOD(AGS2Client::Initialize^2, AGS2Client::Initialize);
Common::String gameTarget = ConfMan.getActiveDomainName();
const MetaEngine *meta = ::AGS::g_vm->getMetaEngine();
@@ -178,11 +176,6 @@ void AGS2Client::Initialize(ScriptMethodParams ¶ms) {
/*------------------------------------------------------------------*/
-AGSGalaxy::AGSGalaxy() : AGS2Client() {
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
-}
-
const char *AGSGalaxy::AGS_GetPluginName() {
return "AGSGalaxy";
}
@@ -190,35 +183,30 @@ const char *AGSGalaxy::AGS_GetPluginName() {
void AGSGalaxy::AGS_EngineStartup(IAGSEngine *engine) {
AGS2Client::AGS_EngineStartup(engine);
- SCRIPT_METHOD_EXT(AGSGalaxy::IsAchievementAchieved^1, IsAchievementAchieved);
- SCRIPT_METHOD_EXT(AGSGalaxy::SetAchievementAchieved^1, SetAchievementAchieved);
- SCRIPT_METHOD_EXT(AGSGalaxy::ResetAchievement^1, ResetAchievement);
- SCRIPT_METHOD_EXT(AGSGalaxy::GetIntStat^1, GetIntStat);
- SCRIPT_METHOD_EXT(AGSGalaxy::GetFloatStat^1, GetFloatStat);
- SCRIPT_METHOD_EXT(AGSGalaxy::GetAverageRateStat^1, GetAverageRateStat);
- SCRIPT_METHOD_EXT(AGSGalaxy::SetIntStat^2, SetIntStat);
- SCRIPT_METHOD_EXT(AGSGalaxy::SetFloatStat^2, SetFloatStat);
- SCRIPT_METHOD_EXT(AGSGalaxy::UpdateAverageRateStat^3, UpdateAverageRateStat);
- SCRIPT_METHOD_EXT(AGSGalaxy::ResetStatsAndAchievements^0, ResetStatsAndAchievements);
- SCRIPT_METHOD_EXT(AGSGalaxy::get_Initialized, get_Initialized);
- SCRIPT_METHOD_EXT(AGSGalaxy::get_CurrentLeaderboardName, get_CurrentLeaderboardName);
- SCRIPT_METHOD_EXT(AGSGalaxy::RequestLeaderboard^3, RequestLeaderboard);
- SCRIPT_METHOD_EXT(AGSGalaxy::UploadScore^1, UploadScore);
- SCRIPT_METHOD_EXT(AGSGalaxy::geti_LeaderboardNames, geti_LeaderboardNames);
- SCRIPT_METHOD_EXT(AGSGalaxy::geti_LeaderboardScores, geti_LeaderboardScores);
- SCRIPT_METHOD_EXT(AGSGalaxy::get_LeaderboardCount, get_LeaderboardCount);
- SCRIPT_METHOD_EXT(AGSGalaxy::GetUserName^0, GetUserName);
- SCRIPT_METHOD_EXT(AGSGalaxy::GetCurrentGameLanguage^0, GetCurrentGameLanguage);
- SCRIPT_METHOD_EXT(AGSGalaxy::Initialize^2, Initialize);
+ SCRIPT_METHOD(AGSGalaxy::IsAchievementAchieved^1, AGSGalaxy::IsAchievementAchieved);
+ SCRIPT_METHOD(AGSGalaxy::SetAchievementAchieved^1, AGSGalaxy::SetAchievementAchieved);
+ SCRIPT_METHOD(AGSGalaxy::ResetAchievement^1, AGSGalaxy::ResetAchievement);
+ SCRIPT_METHOD(AGSGalaxy::GetIntStat^1, AGSGalaxy::GetIntStat);
+ SCRIPT_METHOD(AGSGalaxy::GetFloatStat^1, AGSGalaxy::GetFloatStat);
+ SCRIPT_METHOD(AGSGalaxy::GetAverageRateStat^1, AGSGalaxy::GetAverageRateStat);
+ SCRIPT_METHOD(AGSGalaxy::SetIntStat^2, AGSGalaxy::SetIntStat);
+ SCRIPT_METHOD(AGSGalaxy::SetFloatStat^2, AGSGalaxy::SetFloatStat);
+ SCRIPT_METHOD(AGSGalaxy::UpdateAverageRateStat^3, AGSGalaxy::UpdateAverageRateStat);
+ SCRIPT_METHOD(AGSGalaxy::ResetStatsAndAchievements^0, AGSGalaxy::ResetStatsAndAchievements);
+ SCRIPT_METHOD(AGSGalaxy::get_Initialized, AGSGalaxy::get_Initialized);
+ SCRIPT_METHOD(AGSGalaxy::get_CurrentLeaderboardName, AGSGalaxy::get_CurrentLeaderboardName);
+ SCRIPT_METHOD(AGSGalaxy::RequestLeaderboard^3, AGSGalaxy::RequestLeaderboard);
+ SCRIPT_METHOD(AGSGalaxy::UploadScore^1, AGSGalaxy::UploadScore);
+ SCRIPT_METHOD(AGSGalaxy::geti_LeaderboardNames, AGSGalaxy::geti_LeaderboardNames);
+ SCRIPT_METHOD(AGSGalaxy::geti_LeaderboardScores, AGSGalaxy::geti_LeaderboardScores);
+ SCRIPT_METHOD(AGSGalaxy::get_LeaderboardCount, AGSGalaxy::get_LeaderboardCount);
+ SCRIPT_METHOD(AGSGalaxy::GetUserName^0, AGSGalaxy::GetUserName);
+ SCRIPT_METHOD(AGSGalaxy::GetCurrentGameLanguage^0, AGSGalaxy::GetCurrentGameLanguage);
+ SCRIPT_METHOD(AGSGalaxy::Initialize^2, AGSGalaxy::Initialize);
}
/*------------------------------------------------------------------*/
-AGSSteam::AGSSteam() : AGS2Client() {
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
-}
-
const char *AGSSteam::AGS_GetPluginName() {
return "AGSSteam";
}
@@ -226,26 +214,26 @@ const char *AGSSteam::AGS_GetPluginName() {
void AGSSteam::AGS_EngineStartup(IAGSEngine *engine) {
AGS2Client::AGS_EngineStartup(engine);
- SCRIPT_METHOD_EXT(AGSteam::IsAchievementAchieved^1, IsAchievementAchieved);
- SCRIPT_METHOD_EXT(AGSteam::SetAchievementAchieved^1, SetAchievementAchieved);
- SCRIPT_METHOD_EXT(AGSteam::ResetAchievement^1, ResetAchievement);
- SCRIPT_METHOD_EXT(AGSteam::GetIntStat^1, GetIntStat);
- SCRIPT_METHOD_EXT(AGSteam::GetFloatStat^1, GetFloatStat);
- SCRIPT_METHOD_EXT(AGSteam::GetAverageRateStat^1, GetAverageRateStat);
- SCRIPT_METHOD_EXT(AGSteam::SetIntStat^2, SetIntStat);
- SCRIPT_METHOD_EXT(AGSteam::SetFloatStat^2, SetFloatStat);
- SCRIPT_METHOD_EXT(AGSteam::UpdateAverageRateStat^3, UpdateAverageRateStat);
- SCRIPT_METHOD_EXT(AGSteam::ResetStatsAndAchievements^0, ResetStatsAndAchievements);
- SCRIPT_METHOD_EXT(AGSteam::get_Initialized, get_Initialized);
- SCRIPT_METHOD_EXT(AGSteam::get_CurrentLeaderboardName, get_CurrentLeaderboardName);
- SCRIPT_METHOD_EXT(AGSteam::RequestLeaderboard^3, RequestLeaderboard);
- SCRIPT_METHOD_EXT(AGSteam::UploadScore^1, UploadScore);
- SCRIPT_METHOD_EXT(AGSteam::geti_LeaderboardNames, geti_LeaderboardNames);
- SCRIPT_METHOD_EXT(AGSteam::geti_LeaderboardScores, geti_LeaderboardScores);
- SCRIPT_METHOD_EXT(AGSteam::get_LeaderboardCount, get_LeaderboardCount);
- SCRIPT_METHOD_EXT(AGSteam::GetUserName^0, GetUserName);
- SCRIPT_METHOD_EXT(AGSteam::GetCurrentGameLanguage^0, GetCurrentGameLanguage);
- SCRIPT_METHOD_EXT(AGSteam::FindLeaderboard^1, FindLeaderboard);
+ SCRIPT_METHOD(AGSteam::IsAchievementAchieved^1, AGSSteam::IsAchievementAchieved);
+ SCRIPT_METHOD(AGSteam::SetAchievementAchieved^1, AGSSteam::SetAchievementAchieved);
+ SCRIPT_METHOD(AGSteam::ResetAchievement^1, AGSSteam::ResetAchievement);
+ SCRIPT_METHOD(AGSteam::GetIntStat^1, AGSSteam::GetIntStat);
+ SCRIPT_METHOD(AGSteam::GetFloatStat^1, AGSSteam::GetFloatStat);
+ SCRIPT_METHOD(AGSteam::GetAverageRateStat^1, AGSSteam::GetAverageRateStat);
+ SCRIPT_METHOD(AGSteam::SetIntStat^2, AGSSteam::SetIntStat);
+ SCRIPT_METHOD(AGSteam::SetFloatStat^2, AGSSteam::SetFloatStat);
+ SCRIPT_METHOD(AGSteam::UpdateAverageRateStat^3, AGSSteam::UpdateAverageRateStat);
+ SCRIPT_METHOD(AGSteam::ResetStatsAndAchievements^0, AGSSteam::ResetStatsAndAchievements);
+ SCRIPT_METHOD(AGSteam::get_Initialized, AGSSteam::get_Initialized);
+ SCRIPT_METHOD(AGSteam::get_CurrentLeaderboardName, AGSSteam::get_CurrentLeaderboardName);
+ SCRIPT_METHOD(AGSteam::RequestLeaderboard^3, AGSSteam::RequestLeaderboard);
+ SCRIPT_METHOD(AGSteam::UploadScore^1, AGSSteam::UploadScore);
+ SCRIPT_METHOD(AGSteam::geti_LeaderboardNames, AGSSteam::geti_LeaderboardNames);
+ SCRIPT_METHOD(AGSteam::geti_LeaderboardScores, AGSSteam::geti_LeaderboardScores);
+ SCRIPT_METHOD(AGSteam::get_LeaderboardCount, AGSSteam::get_LeaderboardCount);
+ SCRIPT_METHOD(AGSteam::GetUserName^0, AGSSteam::GetUserName);
+ SCRIPT_METHOD(AGSteam::GetCurrentGameLanguage^0, AGSSteam::GetCurrentGameLanguage);
+ SCRIPT_METHOD(AGSteam::FindLeaderboard^1, AGSSteam::FindLeaderboard);
}
} // namespace AGSGalaxySteam
diff --git a/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.h b/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.h
index d3ef7dbd71..8bb387e071 100644
--- a/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.h
+++ b/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.h
@@ -23,7 +23,7 @@
#ifndef AGS_PLUGINS_AGS_GALAXY_STEAM_AGS_GALAXY_STEAM_H
#define AGS_PLUGINS_AGS_GALAXY_STEAM_AGS_GALAXY_STEAM_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
#include "common/array.h"
#include "common/rect.h"
#include "common/str.h"
@@ -34,6 +34,7 @@ namespace Plugins {
namespace AGSGalaxySteam {
class AGS2Client : public PluginBase {
+ SCRIPT_HASH(AGS2Client)
protected:
void IsAchievementAchieved(ScriptMethodParams ¶ms);
void SetAchievementAchieved(ScriptMethodParams ¶ms);
@@ -57,31 +58,31 @@ protected:
void FindLeaderboard(ScriptMethodParams ¶ms);
void Initialize(ScriptMethodParams ¶ms);
-protected:
- void AGS_EngineStartup(IAGSEngine *engine) override;
-
public:
- AGS2Client();
-};
+ AGS2Client() : PluginBase() {}
+ virtual ~AGS2Client() {}
-class AGSGalaxy : public AGS2Client {
-private:
- const char *AGS_GetPluginName();
void AGS_EngineStartup(IAGSEngine *engine) override;
+};
+class AGSGalaxy : public AGS2Client {
+ SCRIPT_HASH(AGSGalaxy)
public:
- AGSGalaxy();
+ AGSGalaxy() : AGS2Client() {}
+ virtual ~AGSGalaxy() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *engine) override;
};
class AGSSteam : public AGS2Client {
-private:
- const char *AGS_GetPluginName();
+ SCRIPT_HASH(AGSSteam)
+public:
+ AGSSteam() : AGS2Client() {}
+ virtual ~AGSSteam() {}
-protected:
+ const char *AGS_GetPluginName() override;
void AGS_EngineStartup(IAGSEngine *engine) override;
-
-public:
- AGSSteam();
};
} // namespace AGSGalaxySteam
diff --git a/engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.cpp b/engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.cpp
index ca7ed00b62..579a523893 100644
--- a/engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.cpp
+++ b/engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.cpp
@@ -26,10 +26,6 @@ namespace AGS3 {
namespace Plugins {
namespace AGSGalaxySteam {
-AGSWadjetEyeSteam::AGSWadjetEyeSteam() : AGSSteam() {
- DLL_METHOD(AGS_EngineStartup);
-}
-
void AGSWadjetEyeSteam::AddAchievement(ScriptMethodParams ¶ms) {
warning("AGSWadjetEyeSteam::AddAchievement() is not implemented");
params._result = 0;
@@ -42,29 +38,30 @@ void AGSWadjetEyeSteam::AddStat(ScriptMethodParams ¶ms) {
void AGSWadjetEyeSteam::AGS_EngineStartup(IAGSEngine *engine) {
AGSSteam::AGS_EngineStartup(engine);
- SCRIPT_METHOD_EXT(Steam::AddAchievement^1, AddAchievement);
- SCRIPT_METHOD_EXT(Steam::AddStat^2, AddStat);
- SCRIPT_METHOD_EXT(Steam::IsAchievementAchieved^1, IsAchievementAchieved);
- SCRIPT_METHOD_EXT(Steam::SetAchievementAchieved^1, SetAchievementAchieved);
- SCRIPT_METHOD_EXT(Steam::ResetAchievement^1, ResetAchievement);
- SCRIPT_METHOD_EXT(Steam::GetIntStat^1, GetIntStat);
- SCRIPT_METHOD_EXT(Steam::GetFloatStat^1, GetFloatStat);
- SCRIPT_METHOD_EXT(Steam::GetAverageRateStat^1, GetAverageRateStat);
- SCRIPT_METHOD_EXT(Steam::SetIntStat^2, SetIntStat);
- SCRIPT_METHOD_EXT(Steam::SetFloatStat^2, SetFloatStat);
- SCRIPT_METHOD_EXT(Steam::UpdateAverageRateStat^3, UpdateAverageRateStat);
- SCRIPT_METHOD_EXT(Steam::ResetStatsAndAchievements^0, ResetStatsAndAchievements);
- SCRIPT_METHOD_EXT(Steam::get_Initialized, get_Initialized);
- SCRIPT_METHOD_EXT(Steam::get_CurrentLeaderboardName, get_CurrentLeaderboardName);
- SCRIPT_METHOD_EXT(Steam::RequestLeaderboard^3, RequestLeaderboard);
- SCRIPT_METHOD_EXT(Steam::UploadScore^1, UploadScore);
- SCRIPT_METHOD_EXT(Steam::geti_LeaderboardNames, geti_LeaderboardNames);
- SCRIPT_METHOD_EXT(Steam::geti_LeaderboardScores, geti_LeaderboardScores);
- SCRIPT_METHOD_EXT(Steam::get_LeaderboardCount, get_LeaderboardCount);
- SCRIPT_METHOD_EXT(Steam::GetUserName^0, GetUserName);
- SCRIPT_METHOD_EXT(Steam::GetCurrentGameLanguage^0, GetCurrentGameLanguage);
- SCRIPT_METHOD_EXT(Steam::FindLeaderboard^1, FindLeaderboard);
- SCRIPT_METHOD_EXT(Steam::Initialize^2, Initialize);
+
+ SCRIPT_METHOD(Steam::AddAchievement^1, AGSWadjetEyeSteam::AddAchievement);
+ SCRIPT_METHOD(Steam::AddStat^2, AGSWadjetEyeSteam::AddStat);
+ SCRIPT_METHOD(Steam::IsAchievementAchieved^1, AGSWadjetEyeSteam::IsAchievementAchieved);
+ SCRIPT_METHOD(Steam::SetAchievementAchieved^1, AGSWadjetEyeSteam::SetAchievementAchieved);
+ SCRIPT_METHOD(Steam::ResetAchievement^1, AGSWadjetEyeSteam::ResetAchievement);
+ SCRIPT_METHOD(Steam::GetIntStat^1, AGSWadjetEyeSteam::GetIntStat);
+ SCRIPT_METHOD(Steam::GetFloatStat^1, AGSWadjetEyeSteam::GetFloatStat);
+ SCRIPT_METHOD(Steam::GetAverageRateStat^1, AGSWadjetEyeSteam::GetAverageRateStat);
+ SCRIPT_METHOD(Steam::SetIntStat^2, AGSWadjetEyeSteam::SetIntStat);
+ SCRIPT_METHOD(Steam::SetFloatStat^2, AGSWadjetEyeSteam::SetFloatStat);
+ SCRIPT_METHOD(Steam::UpdateAverageRateStat^3, AGSWadjetEyeSteam::UpdateAverageRateStat);
+ SCRIPT_METHOD(Steam::ResetStatsAndAchievements^0, AGSWadjetEyeSteam::ResetStatsAndAchievements);
+ SCRIPT_METHOD(Steam::get_Initialized, AGSWadjetEyeSteam::get_Initialized);
+ SCRIPT_METHOD(Steam::get_CurrentLeaderboardName, AGSWadjetEyeSteam::get_CurrentLeaderboardName);
+ SCRIPT_METHOD(Steam::RequestLeaderboard^3, AGSWadjetEyeSteam::RequestLeaderboard);
+ SCRIPT_METHOD(Steam::UploadScore^1, AGSWadjetEyeSteam::UploadScore);
+ SCRIPT_METHOD(Steam::geti_LeaderboardNames, AGSWadjetEyeSteam::geti_LeaderboardNames);
+ SCRIPT_METHOD(Steam::geti_LeaderboardScores, AGSWadjetEyeSteam::geti_LeaderboardScores);
+ SCRIPT_METHOD(Steam::get_LeaderboardCount, AGSWadjetEyeSteam::get_LeaderboardCount);
+ SCRIPT_METHOD(Steam::GetUserName^0, AGSWadjetEyeSteam::GetUserName);
+ SCRIPT_METHOD(Steam::GetCurrentGameLanguage^0, AGSWadjetEyeSteam::GetCurrentGameLanguage);
+ SCRIPT_METHOD(Steam::FindLeaderboard^1, AGSWadjetEyeSteam::FindLeaderboard);
+ SCRIPT_METHOD(Steam::Initialize^2, AGSWadjetEyeSteam::Initialize);
}
} // namespace AGSGalaxySteam
diff --git a/engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.h b/engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.h
index 9445834c7a..775fd492ce 100644
--- a/engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.h
+++ b/engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.h
@@ -30,13 +30,16 @@ namespace Plugins {
namespace AGSGalaxySteam {
class AGSWadjetEyeSteam : public AGSSteam {
+ SCRIPT_HASH(AGSWadjetEyeSteam)
private:
- void AGS_EngineStartup(IAGSEngine *engine) override;
void AddAchievement(ScriptMethodParams ¶ms);
void AddStat(ScriptMethodParams ¶ms);
public:
- AGSWadjetEyeSteam();
+ AGSWadjetEyeSteam() : AGSSteam() {}
+ virtual ~AGSWadjetEyeSteam() {}
+
+ void AGS_EngineStartup(IAGSEngine *engine) override;
};
} // namespace AGSGalaxySteam
diff --git a/engines/ags/plugins/ags_joy/ags_joy.cpp b/engines/ags/plugins/ags_joy/ags_joy.cpp
index dbc8b89e55..05f957f1df 100644
--- a/engines/ags/plugins/ags_joy/ags_joy.cpp
+++ b/engines/ags/plugins/ags_joy/ags_joy.cpp
@@ -27,37 +27,30 @@ namespace AGS3 {
namespace Plugins {
namespace AGSJoy {
-IAGSEngine *AGSJoy::_engine;
-
-AGSJoy::AGSJoy() : PluginBase() {
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
-}
-
const char *AGSJoy::AGS_GetPluginName() {
return "AGSJoy";
}
void AGSJoy::AGS_EngineStartup(IAGSEngine *engine) {
- _engine = engine;
+ PluginBase::AGS_EngineStartup(engine);
// Register functions
- SCRIPT_METHOD_EXT(JoystickCount, Count);
- SCRIPT_METHOD_EXT(JoystickName, Name);
- SCRIPT_METHOD_EXT(JoystickRescan, Rescan);
- SCRIPT_METHOD_EXT(Joystick::Open, Open);
- SCRIPT_METHOD_EXT(Joystick::IsOpen, IsOpen);
- SCRIPT_METHOD_EXT(Joystick::Click, Click);
- SCRIPT_METHOD_EXT(Joystick::Close, Close);
- SCRIPT_METHOD_EXT(Joystick::Valid, Valid);
- SCRIPT_METHOD_EXT(Joystick::Unplugged, Unplugged);
- SCRIPT_METHOD_EXT(Joystick::GetName, GetName);
- SCRIPT_METHOD_EXT(Joystick::GetAxis, GetAxis);
- SCRIPT_METHOD_EXT(Joystick::IsButtonDown, IsButtonDown);
- SCRIPT_METHOD_EXT(Joystick::IsJoyBtnDown, IsJoyBtnDown);
- SCRIPT_METHOD_EXT(Joystick::Update, Update);
- SCRIPT_METHOD_EXT(Joystick::DisableEvents, DisableEvents);
- SCRIPT_METHOD_EXT(Joystick::EnableEvents, EnableEvents);
+ SCRIPT_METHOD(JoystickCount, AGSJoy::Count);
+ SCRIPT_METHOD(JoystickName, AGSJoy::Name);
+ SCRIPT_METHOD(JoystickRescan, AGSJoy::Rescan);
+ SCRIPT_METHOD(Joystick::Open, AGSJoy::Open);
+ SCRIPT_METHOD(Joystick::IsOpen, AGSJoy::IsOpen);
+ SCRIPT_METHOD(Joystick::Click, AGSJoy::Click);
+ SCRIPT_METHOD(Joystick::Close, AGSJoy::Close);
+ SCRIPT_METHOD(Joystick::Valid, AGSJoy::Valid);
+ SCRIPT_METHOD(Joystick::Unplugged, AGSJoy::Unplugged);
+ SCRIPT_METHOD(Joystick::GetName, AGSJoy::GetName);
+ SCRIPT_METHOD(Joystick::GetAxis, AGSJoy::GetAxis);
+ SCRIPT_METHOD(Joystick::IsButtonDown, AGSJoy::IsButtonDown);
+ SCRIPT_METHOD(Joystick::IsJoyBtnDown, AGSJoy::IsJoyBtnDown);
+ SCRIPT_METHOD(Joystick::Update, AGSJoy::Update);
+ SCRIPT_METHOD(Joystick::DisableEvents, AGSJoy::DisableEvents);
+ SCRIPT_METHOD(Joystick::EnableEvents, AGSJoy::EnableEvents);
}
void AGSJoy::Count(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/ags_joy/ags_joy.h b/engines/ags/plugins/ags_joy/ags_joy.h
index 76cf9fa7c8..08ece7a656 100644
--- a/engines/ags/plugins/ags_joy/ags_joy.h
+++ b/engines/ags/plugins/ags_joy/ags_joy.h
@@ -23,39 +23,38 @@
#ifndef AGS_PLUGINS_AGS_JOY_AGS_JOY_H
#define AGS_PLUGINS_AGS_JOY_AGS_JOY_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace AGSJoy {
class AGSJoy : public PluginBase {
+ SCRIPT_HASH(AGSJoy)
private:
-IAGSEngine *_engine;
-private:
-const char *AGS_GetPluginName();
-void AGS_EngineStartup(IAGSEngine *lpEngine);
-
-private:
-void Count(ScriptMethodParams ¶ms);
-void Name(ScriptMethodParams ¶ms);
-void Rescan(ScriptMethodParams ¶ms);
-void Open(ScriptMethodParams ¶ms);
-void IsOpen(ScriptMethodParams ¶ms);
-void Click(ScriptMethodParams ¶ms);
-void Close(ScriptMethodParams ¶ms);
-void Valid(ScriptMethodParams ¶ms);
-void Unplugged(ScriptMethodParams ¶ms);
-void GetName(ScriptMethodParams ¶ms);
-void GetAxis(ScriptMethodParams ¶ms);
-void IsButtonDown(ScriptMethodParams ¶ms);
-void IsJoyBtnDown(ScriptMethodParams ¶ms);
-void Update(ScriptMethodParams ¶ms);
-void DisableEvents(ScriptMethodParams ¶ms);
-void EnableEvents(ScriptMethodParams ¶ms);
+ void Count(ScriptMethodParams ¶ms);
+ void Name(ScriptMethodParams ¶ms);
+ void Rescan(ScriptMethodParams ¶ms);
+ void Open(ScriptMethodParams ¶ms);
+ void IsOpen(ScriptMethodParams ¶ms);
+ void Click(ScriptMethodParams ¶ms);
+ void Close(ScriptMethodParams ¶ms);
+ void Valid(ScriptMethodParams ¶ms);
+ void Unplugged(ScriptMethodParams ¶ms);
+ void GetName(ScriptMethodParams ¶ms);
+ void GetAxis(ScriptMethodParams ¶ms);
+ void IsButtonDown(ScriptMethodParams ¶ms);
+ void IsJoyBtnDown(ScriptMethodParams ¶ms);
+ void Update(ScriptMethodParams ¶ms);
+ void DisableEvents(ScriptMethodParams ¶ms);
+ void EnableEvents(ScriptMethodParams ¶ms);
public:
-AGSJoy();
+ AGSJoy() : PluginBase() {}
+ virtual ~AGSJoy() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *lpEngine) override;
};
} // namespace AGSJoy
diff --git a/engines/ags/plugins/ags_nickenstien_gfx/ags_nickenstien_gfx.cpp b/engines/ags/plugins/ags_nickenstien_gfx/ags_nickenstien_gfx.cpp
index 5ed2979c37..55122fb013 100644
--- a/engines/ags/plugins/ags_nickenstien_gfx/ags_nickenstien_gfx.cpp
+++ b/engines/ags/plugins/ags_nickenstien_gfx/ags_nickenstien_gfx.cpp
@@ -26,103 +26,94 @@ namespace AGS3 {
namespace Plugins {
namespace AGSNickenstienGFX {
-IAGSEngine *AGSNickenstienGFX::_engine;
-
-AGSNickenstienGFX::AGSNickenstienGFX() : PluginBase() {
- _engine = nullptr;
-
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
-}
-
const char *AGSNickenstienGFX::AGS_GetPluginName() {
return "Nickenstien\'s NGFX Graphics Library.";
}
void AGSNickenstienGFX::AGS_EngineStartup(IAGSEngine *engine) {
- _engine = engine;
+ PluginBase::AGS_EngineStartup(engine);
if (_engine->version < 3)
_engine->AbortGame("Engine interface is too old, need newer version of AGS.");
- SCRIPT_METHOD(NGFX_GRAPHICS_Initialise);
- SCRIPT_METHOD(NGFX_GRAPHICS_Enable);
- SCRIPT_METHOD(NGFX_GRAPHICS_SetTimeScalar);
- SCRIPT_METHOD(NGFX_GRAPHICS_FullScreenFadeOut);
- SCRIPT_METHOD(NGFX_GRAPHICS_FullScreenFadeIn);
- SCRIPT_METHOD(NGFX_GRAPHICS_FullScreenFadeOut_2);
- SCRIPT_METHOD(NGFX_GRAPHICS_FullScreenFadeOut_2_SetBackgroundColour);
- SCRIPT_METHOD(NGFX_GRAPHICS_FullScreenFadeIn_2);
- SCRIPT_METHOD(NGFX_GRAPHICS_SetAnisotropicFilter);
- SCRIPT_METHOD(NGFX_TEXTURE_Load);
- SCRIPT_METHOD(NGFX_TEXTURE_Release);
- SCRIPT_METHOD(NGFX_TEXTURE_GetWidth);
- SCRIPT_METHOD(NGFX_TEXTURE_GetHeight);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_Create);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_Release);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetType);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetLife);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEmittionRate);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetParticlesPerEmittion);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetPosition1);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetPosition2);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartVelocity);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartVelocity_Deviation);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEndVelocity);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEndVelocity_Deviation);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartWidth);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartWidth_Deviation);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEndWidth);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEndWidth_Deviation);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartHeight);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartHeight_Deviation);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEndHeight);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEndHeight_Deviation);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartAngle);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartAngle_Deviation);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetRotation);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetRotation_Deviation);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartColour);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartColour_Deviation);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEndColour);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEndColour_Deviation);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetBlendMode);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetTexture);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetForce);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetParticleLife);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetParticleLife_Deviation);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetNoTimeOut);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetDrawOrderReversed);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetProcessWhenOffScreen);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetUseVelocityParticles);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetChannelID);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_Start);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_Clone);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_ReleaseAll);
- SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_Evolve);
- SCRIPT_METHOD(NGFX_HasGameRoomChanged);
- SCRIPT_METHOD(NGFX_HasGameRoomChanged_SecondTest);
- SCRIPT_METHOD(NGFX_SPRITE_ResetForNewRoom);
- SCRIPT_METHOD(NGFX_SPRITE_Create);
- SCRIPT_METHOD(NGFX_SPRITE_Release);
- SCRIPT_METHOD(NGFX_SPRITE_SetChannelID);
- SCRIPT_METHOD(NGFX_SPRITE_SetPosition);
- SCRIPT_METHOD(NGFX_SPRITE_SetPivot);
- SCRIPT_METHOD(NGFX_SPRITE_SetTexture);
- SCRIPT_METHOD(NGFX_SPRITE_SetBlendMode);
- SCRIPT_METHOD(NGFX_SPRITE_SetWidth);
- SCRIPT_METHOD(NGFX_SPRITE_SetHeight);
- SCRIPT_METHOD(NGFX_SPRITE_SetAngle);
- SCRIPT_METHOD(NGFX_SPRITE_SetColour_1);
- SCRIPT_METHOD(NGFX_SPRITE_SetColour_2);
- SCRIPT_METHOD(NGFX_SPRITE_SetColour_3);
- SCRIPT_METHOD(NGFX_SPRITE_SetColour_4);
- SCRIPT_METHOD(NGFX_SPRITE_SetClipRectangle);
- SCRIPT_METHOD(NGFX_SPRITE_SetGourard);
- SCRIPT_METHOD(NGFX_SPRITE_SetFlipped_H);
- SCRIPT_METHOD(NGFX_SPRITE_SetFlipped_V);
- SCRIPT_METHOD(NGFX_SPRITE_AddToDrawList);
- SCRIPT_METHOD(NGFX_InitForNewGameLoop);
+ SCRIPT_METHOD(NGFX_GRAPHICS_Initialise, AGSNickenstienGFX::NGFX_GRAPHICS_Initialise);
+ SCRIPT_METHOD(NGFX_GRAPHICS_Enable, AGSNickenstienGFX::NGFX_GRAPHICS_Enable);
+ SCRIPT_METHOD(NGFX_GRAPHICS_SetTimeScalar, AGSNickenstienGFX::NGFX_GRAPHICS_SetTimeScalar);
+ SCRIPT_METHOD(NGFX_GRAPHICS_FullScreenFadeOut, AGSNickenstienGFX::NGFX_GRAPHICS_FullScreenFadeOut);
+ SCRIPT_METHOD(NGFX_GRAPHICS_FullScreenFadeIn, AGSNickenstienGFX::NGFX_GRAPHICS_FullScreenFadeIn);
+ SCRIPT_METHOD(NGFX_GRAPHICS_FullScreenFadeOut_2, AGSNickenstienGFX::NGFX_GRAPHICS_FullScreenFadeOut_2);
+ SCRIPT_METHOD(NGFX_GRAPHICS_FullScreenFadeOut_2_SetBackgroundColour, AGSNickenstienGFX::NGFX_GRAPHICS_FullScreenFadeOut_2_SetBackgroundColour);
+ SCRIPT_METHOD(NGFX_GRAPHICS_FullScreenFadeIn_2, AGSNickenstienGFX::NGFX_GRAPHICS_FullScreenFadeIn_2);
+ SCRIPT_METHOD(NGFX_GRAPHICS_SetAnisotropicFilter, AGSNickenstienGFX::NGFX_GRAPHICS_SetAnisotropicFilter);
+ SCRIPT_METHOD(NGFX_TEXTURE_Load, AGSNickenstienGFX::NGFX_TEXTURE_Load);
+ SCRIPT_METHOD(NGFX_TEXTURE_Release, AGSNickenstienGFX::NGFX_TEXTURE_Release);
+ SCRIPT_METHOD(NGFX_TEXTURE_GetWidth, AGSNickenstienGFX::NGFX_TEXTURE_GetWidth);
+ SCRIPT_METHOD(NGFX_TEXTURE_GetHeight, AGSNickenstienGFX::NGFX_TEXTURE_GetHeight);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_Create, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_Create);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_Release, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_Release);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetType, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetType);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetLife, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetLife);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEmittionRate, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetEmittionRate);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetParticlesPerEmittion, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetParticlesPerEmittion);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetPosition1, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetPosition1);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetPosition2, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetPosition2);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartVelocity, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetStartVelocity);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartVelocity_Deviation, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetStartVelocity_Deviation);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEndVelocity, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetEndVelocity);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEndVelocity_Deviation, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetEndVelocity_Deviation);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartWidth, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetStartWidth);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartWidth_Deviation, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetStartWidth_Deviation);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEndWidth, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetEndWidth);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEndWidth_Deviation, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetEndWidth_Deviation);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartHeight, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetStartHeight);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartHeight_Deviation, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetStartHeight_Deviation);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEndHeight, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetEndHeight);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEndHeight_Deviation, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetEndHeight_Deviation);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartAngle, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetStartAngle);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartAngle_Deviation, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetStartAngle_Deviation);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetRotation, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetRotation);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetRotation_Deviation, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetRotation_Deviation);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartColour, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetStartColour);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetStartColour_Deviation, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetStartColour_Deviation);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEndColour, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetEndColour);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetEndColour_Deviation, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetEndColour_Deviation);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetBlendMode, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetBlendMode);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetTexture, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetTexture);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetForce, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetForce);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetParticleLife, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetParticleLife);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetParticleLife_Deviation, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetParticleLife_Deviation);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetNoTimeOut, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetNoTimeOut);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetDrawOrderReversed, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetDrawOrderReversed);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetProcessWhenOffScreen, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetProcessWhenOffScreen);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetUseVelocityParticles, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetUseVelocityParticles);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_SetChannelID, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_SetChannelID);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_Start, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_Start);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_Clone, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_Clone);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_ReleaseAll, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_ReleaseAll);
+ SCRIPT_METHOD(NGFX_PARTICLE_EMITTER_Evolve, AGSNickenstienGFX::NGFX_PARTICLE_EMITTER_Evolve);
+ SCRIPT_METHOD(NGFX_HasGameRoomChanged, AGSNickenstienGFX::NGFX_HasGameRoomChanged);
+ SCRIPT_METHOD(NGFX_HasGameRoomChanged_SecondTest, AGSNickenstienGFX::NGFX_HasGameRoomChanged_SecondTest);
+ SCRIPT_METHOD(NGFX_SPRITE_ResetForNewRoom, AGSNickenstienGFX::NGFX_SPRITE_ResetForNewRoom);
+ SCRIPT_METHOD(NGFX_SPRITE_Create, AGSNickenstienGFX::NGFX_SPRITE_Create);
+ SCRIPT_METHOD(NGFX_SPRITE_Release, AGSNickenstienGFX::NGFX_SPRITE_Release);
+ SCRIPT_METHOD(NGFX_SPRITE_SetChannelID, AGSNickenstienGFX::NGFX_SPRITE_SetChannelID);
+ SCRIPT_METHOD(NGFX_SPRITE_SetPosition, AGSNickenstienGFX::NGFX_SPRITE_SetPosition);
+ SCRIPT_METHOD(NGFX_SPRITE_SetPivot, AGSNickenstienGFX::NGFX_SPRITE_SetPivot);
+ SCRIPT_METHOD(NGFX_SPRITE_SetTexture, AGSNickenstienGFX::NGFX_SPRITE_SetTexture);
+ SCRIPT_METHOD(NGFX_SPRITE_SetBlendMode, AGSNickenstienGFX::NGFX_SPRITE_SetBlendMode);
+ SCRIPT_METHOD(NGFX_SPRITE_SetWidth, AGSNickenstienGFX::NGFX_SPRITE_SetWidth);
+ SCRIPT_METHOD(NGFX_SPRITE_SetHeight, AGSNickenstienGFX::NGFX_SPRITE_SetHeight);
+ SCRIPT_METHOD(NGFX_SPRITE_SetAngle, AGSNickenstienGFX::NGFX_SPRITE_SetAngle);
+ SCRIPT_METHOD(NGFX_SPRITE_SetColour_1, AGSNickenstienGFX::NGFX_SPRITE_SetColour_1);
+ SCRIPT_METHOD(NGFX_SPRITE_SetColour_2, AGSNickenstienGFX::NGFX_SPRITE_SetColour_2);
+ SCRIPT_METHOD(NGFX_SPRITE_SetColour_3, AGSNickenstienGFX::NGFX_SPRITE_SetColour_3);
+ SCRIPT_METHOD(NGFX_SPRITE_SetColour_4, AGSNickenstienGFX::NGFX_SPRITE_SetColour_4);
+ SCRIPT_METHOD(NGFX_SPRITE_SetClipRectangle, AGSNickenstienGFX::NGFX_SPRITE_SetClipRectangle);
+ SCRIPT_METHOD(NGFX_SPRITE_SetGourard, AGSNickenstienGFX::NGFX_SPRITE_SetGourard);
+ SCRIPT_METHOD(NGFX_SPRITE_SetFlipped_H, AGSNickenstienGFX::NGFX_SPRITE_SetFlipped_H);
+ SCRIPT_METHOD(NGFX_SPRITE_SetFlipped_V, AGSNickenstienGFX::NGFX_SPRITE_SetFlipped_V);
+ SCRIPT_METHOD(NGFX_SPRITE_AddToDrawList, AGSNickenstienGFX::NGFX_SPRITE_AddToDrawList);
+ SCRIPT_METHOD(NGFX_InitForNewGameLoop, AGSNickenstienGFX::NGFX_InitForNewGameLoop);
// TODO unnamed functions?
}
diff --git a/engines/ags/plugins/ags_nickenstien_gfx/ags_nickenstien_gfx.h b/engines/ags/plugins/ags_nickenstien_gfx/ags_nickenstien_gfx.h
index e23b6893d7..362f237ed0 100644
--- a/engines/ags/plugins/ags_nickenstien_gfx/ags_nickenstien_gfx.h
+++ b/engines/ags/plugins/ags_nickenstien_gfx/ags_nickenstien_gfx.h
@@ -24,99 +24,100 @@
#define AGS_PLUGINS_AGS_NICKENSTIEN_GFX_AGS_NICKENSTIEN_GFX_H
#include "common/str.h"
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace AGSNickenstienGFX {
class AGSNickenstienGFX : public PluginBase {
+ SCRIPT_HASH(AGSNickenstienGFX)
private:
-IAGSEngine *_engine;
-const char *AGS_GetPluginName();
-void AGS_EngineStartup(IAGSEngine *engine) override;
-
-void NGFX_GRAPHICS_Initialise(ScriptMethodParams ¶ms);
-void NGFX_GRAPHICS_Enable(ScriptMethodParams ¶ms);
-void NGFX_GRAPHICS_SetTimeScalar(ScriptMethodParams ¶ms);
-void NGFX_GRAPHICS_FullScreenFadeOut(ScriptMethodParams ¶ms);
-void NGFX_GRAPHICS_FullScreenFadeIn(ScriptMethodParams ¶ms);
-void NGFX_GRAPHICS_FullScreenFadeOut_2(ScriptMethodParams ¶ms);
-void NGFX_GRAPHICS_FullScreenFadeOut_2_SetBackgroundColour(ScriptMethodParams ¶ms);
-void NGFX_GRAPHICS_FullScreenFadeIn_2(ScriptMethodParams ¶ms);
-void NGFX_GRAPHICS_SetAnisotropicFilter(ScriptMethodParams ¶ms);
-void NGFX_TEXTURE_Load(ScriptMethodParams ¶ms);
-void NGFX_TEXTURE_Release(ScriptMethodParams ¶ms);
-void NGFX_TEXTURE_GetWidth(ScriptMethodParams ¶ms);
-void NGFX_TEXTURE_GetHeight(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_Create(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_Release(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetType(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetLife(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetEmittionRate(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetParticlesPerEmittion(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetPosition1(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetPosition2(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetStartVelocity(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetStartVelocity_Deviation(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetEndVelocity(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetEndVelocity_Deviation(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetStartWidth(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetStartWidth_Deviation(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetEndWidth(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetEndWidth_Deviation(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetStartHeight(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetStartHeight_Deviation(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetEndHeight(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetEndHeight_Deviation(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetStartAngle(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetStartAngle_Deviation(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetRotation(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetRotation_Deviation(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetStartColour(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetStartColour_Deviation(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetEndColour(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetEndColour_Deviation(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetBlendMode(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetTexture(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetForce(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetParticleLife(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetParticleLife_Deviation(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetNoTimeOut(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetDrawOrderReversed(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetProcessWhenOffScreen(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetUseVelocityParticles(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_SetChannelID(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_Start(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_Clone(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_ReleaseAll(ScriptMethodParams ¶ms);
-void NGFX_PARTICLE_EMITTER_Evolve(ScriptMethodParams ¶ms);
-void NGFX_HasGameRoomChanged(ScriptMethodParams ¶ms);
-void NGFX_HasGameRoomChanged_SecondTest(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_ResetForNewRoom(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_Create(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_Release(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_SetChannelID(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_SetPosition(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_SetPivot(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_SetTexture(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_SetBlendMode(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_SetWidth(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_SetHeight(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_SetAngle(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_SetColour_1(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_SetColour_2(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_SetColour_3(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_SetColour_4(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_SetClipRectangle(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_SetGourard(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_SetFlipped_H(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_SetFlipped_V(ScriptMethodParams ¶ms);
-void NGFX_SPRITE_AddToDrawList(ScriptMethodParams ¶ms);
-void NGFX_InitForNewGameLoop(ScriptMethodParams ¶ms);
+ void NGFX_GRAPHICS_Initialise(ScriptMethodParams ¶ms);
+ void NGFX_GRAPHICS_Enable(ScriptMethodParams ¶ms);
+ void NGFX_GRAPHICS_SetTimeScalar(ScriptMethodParams ¶ms);
+ void NGFX_GRAPHICS_FullScreenFadeOut(ScriptMethodParams ¶ms);
+ void NGFX_GRAPHICS_FullScreenFadeIn(ScriptMethodParams ¶ms);
+ void NGFX_GRAPHICS_FullScreenFadeOut_2(ScriptMethodParams ¶ms);
+ void NGFX_GRAPHICS_FullScreenFadeOut_2_SetBackgroundColour(ScriptMethodParams ¶ms);
+ void NGFX_GRAPHICS_FullScreenFadeIn_2(ScriptMethodParams ¶ms);
+ void NGFX_GRAPHICS_SetAnisotropicFilter(ScriptMethodParams ¶ms);
+ void NGFX_TEXTURE_Load(ScriptMethodParams ¶ms);
+ void NGFX_TEXTURE_Release(ScriptMethodParams ¶ms);
+ void NGFX_TEXTURE_GetWidth(ScriptMethodParams ¶ms);
+ void NGFX_TEXTURE_GetHeight(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_Create(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_Release(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetType(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetLife(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetEmittionRate(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetParticlesPerEmittion(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetPosition1(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetPosition2(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetStartVelocity(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetStartVelocity_Deviation(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetEndVelocity(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetEndVelocity_Deviation(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetStartWidth(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetStartWidth_Deviation(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetEndWidth(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetEndWidth_Deviation(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetStartHeight(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetStartHeight_Deviation(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetEndHeight(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetEndHeight_Deviation(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetStartAngle(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetStartAngle_Deviation(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetRotation(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetRotation_Deviation(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetStartColour(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetStartColour_Deviation(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetEndColour(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetEndColour_Deviation(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetBlendMode(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetTexture(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetForce(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetParticleLife(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetParticleLife_Deviation(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetNoTimeOut(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetDrawOrderReversed(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetProcessWhenOffScreen(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetUseVelocityParticles(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_SetChannelID(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_Start(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_Clone(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_ReleaseAll(ScriptMethodParams ¶ms);
+ void NGFX_PARTICLE_EMITTER_Evolve(ScriptMethodParams ¶ms);
+ void NGFX_HasGameRoomChanged(ScriptMethodParams ¶ms);
+ void NGFX_HasGameRoomChanged_SecondTest(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_ResetForNewRoom(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_Create(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_Release(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_SetChannelID(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_SetPosition(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_SetPivot(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_SetTexture(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_SetBlendMode(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_SetWidth(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_SetHeight(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_SetAngle(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_SetColour_1(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_SetColour_2(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_SetColour_3(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_SetColour_4(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_SetClipRectangle(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_SetGourard(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_SetFlipped_H(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_SetFlipped_V(ScriptMethodParams ¶ms);
+ void NGFX_SPRITE_AddToDrawList(ScriptMethodParams ¶ms);
+ void NGFX_InitForNewGameLoop(ScriptMethodParams ¶ms);
public:
-AGSNickenstienGFX();
+ AGSNickenstienGFX() : PluginBase() {}
+ virtual ~AGSNickenstienGFX() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *engine) override;
};
} // namespace AGSNickenstienGFX
diff --git a/engines/ags/plugins/ags_pal_render/ags_pal_render.cpp b/engines/ags/plugins/ags_pal_render/ags_pal_render.cpp
index 9245a7f881..58814a979b 100644
--- a/engines/ags/plugins/ags_pal_render/ags_pal_render.cpp
+++ b/engines/ags/plugins/ags_pal_render/ags_pal_render.cpp
@@ -46,7 +46,6 @@ const float pisquared = PI * PI;
const float picubed = PI * PI * PI;
IAGSEngine *engine;
-
//unsigned char clut[256][256];
unsigned char clut[65536];
@@ -136,23 +135,23 @@ BITMAP *backgroundimage;
PALSTRUCT objectivepal[256];
int bgimgspr;
-void WriteObjectivePalette(ScriptMethodParams ¶ms) {
+void AGSPalRender::WriteObjectivePalette(ScriptMethodParams ¶ms) {
PARAMS4(unsigned char, index, unsigned char, r, unsigned char, b, unsigned char, g);
objectivepal[index].r = r;
objectivepal[index].b = b;
objectivepal[index].g = g;
}
-void ReadObjectivePaletteR(ScriptMethodParams ¶ms) {
+void AGSPalRender::ReadObjectivePaletteR(ScriptMethodParams ¶ms) {
PARAMS1(unsigned char, index);
params._result = (int)objectivepal[index].r;
}
-void ReadObjectivePaletteB(ScriptMethodParams ¶ms) {
+void AGSPalRender::ReadObjectivePaletteB(ScriptMethodParams ¶ms) {
PARAMS1(unsigned char, index);
params._result = (int)objectivepal[index].b;
}
-void ReadObjectivePaletteG(ScriptMethodParams ¶ms) {
+void AGSPalRender::ReadObjectivePaletteG(ScriptMethodParams ¶ms) {
PARAMS1(unsigned char, index);
params._result = (int)objectivepal[index].g;
}
@@ -188,7 +187,7 @@ void PreMultiply_Alphas () //Ha ha, this isn't the kind of premultiplcation you'
}
*/
-void GetModifiedBackgroundImage(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetModifiedBackgroundImage(ScriptMethodParams ¶ms) {
params._result = bgimgspr;
}
@@ -238,20 +237,20 @@ float FastCos(float x) {
return FastSin(x + halfpi);
}
-void AGSFastRoot(ScriptMethodParams ¶ms) {
+void AGSPalRender::AGSFastRoot(ScriptMethodParams ¶ms) {
PARAMS1(unsigned short, x);
x = root(x);
params._result = (int)x;
}
-void AGSFastSin(ScriptMethodParams ¶ms) {
+void AGSPalRender::AGSFastSin(ScriptMethodParams ¶ms) {
PARAMS1(int32, xi);
float x = PARAM_TO_FLOAT(xi);
x = FastSin(x);
params._result = PARAM_FROM_FLOAT(x);
}
-void AGSFastCos(ScriptMethodParams ¶ms) {
+void AGSPalRender::AGSFastCos(ScriptMethodParams ¶ms) {
PARAMS1(int32, xi);
float x = PARAM_TO_FLOAT(xi);
x = FastSin(x + halfpi);
@@ -314,51 +313,51 @@ void DrawLens(int ox, int oy) {
engine->FreeBitmap(lenswrite);
}
-void SetLensPos(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetLensPos(ScriptMethodParams ¶ms) {
PARAMS2(int, x, int, y);
LensOption.x = x;
LensOption.y = y;
}
-void GetLensX(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetLensX(ScriptMethodParams ¶ms) {
params._result = LensOption.x;
}
-void GetLensY(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetLensY(ScriptMethodParams ¶ms) {
params._result = LensOption.y;
}
-void SetLensDrawn(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetLensDrawn(ScriptMethodParams ¶ms) {
PARAMS1(int, toggle);
if (toggle > 0) LensOption.draw = 1;
else LensOption.draw = 0;
}
-void GetLensDrawn(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetLensDrawn(ScriptMethodParams ¶ms) {
params._result = LensOption.draw;
}
-void SetLensOffsetClamp(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetLensOffsetClamp(ScriptMethodParams ¶ms) {
PARAMS1(int, clamp);
if (clamp < 0) LensOption.clampoffset = LensOption.lenswidth;
else LensOption.clampoffset = clamp;
}
-void GetLensOffsetClamp(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetLensOffsetClamp(ScriptMethodParams ¶ms) {
params._result = LensOption.clampoffset;
}
-void GetLensLevel(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetLensLevel(ScriptMethodParams ¶ms) {
params._result = LensOption.level;
}
-void SetLensLevel(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetLensLevel(ScriptMethodParams ¶ms) {
PARAMS1(int, level);
if (level < 0 || level > 4) engine->AbortGame("SetLensLevel: Invalid level.");
else LensOption.level = level;
}
-void LensInitialize(ScriptMethodParams ¶ms) {
+void AGSPalRender::LensInitialize(ScriptMethodParams ¶ms) {
PARAMS5(int, width, int, zoom, int, lensx, int, lensy, int, level);
int clamp = -1;
if (params.size() > 5)
@@ -404,7 +403,7 @@ void LensInitialize(ScriptMethodParams ¶ms) {
else LensOption.level = level;
}
-void ResetRemapping(ScriptMethodParams &) {
+void AGSPalRender::ResetRemapping(ScriptMethodParams &) {
for (int j = 0; j < 256; ++j) {
cycle_remap [j] = j;
}
@@ -418,17 +417,17 @@ int plasmadata3 [MAX_PLASMA_COMPLEXITY];
int plasmaroottype;
-void SetPlasmaRootType(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetPlasmaRootType(ScriptMethodParams ¶ms) {
PARAMS1(int, real);
if (real) plasmaroottype = 1;
else plasmaroottype = 0;
}
-void GetPlasmaRootType(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetPlasmaRootType(ScriptMethodParams ¶ms) {
params._result = plasmaroottype;
}
-void SetPlasmaType(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetPlasmaType(ScriptMethodParams ¶ms) {
PARAMS5(int, component, int, type, int, data, int, data2, int, data3);
if (component >= MAX_PLASMA_COMPLEXITY) engine->AbortGame("Plasma too complex!");
else {
@@ -445,7 +444,7 @@ void SetPlasmaType(ScriptMethodParams ¶ms) {
//4 = Diagonal Bars (data=width)
}
-void ResetPlasmaSettings(ScriptMethodParams &) {
+void AGSPalRender::ResetPlasmaSettings(ScriptMethodParams &) {
int i = 0;
while (i < MAX_PLASMA_COMPLEXITY) {
plasmatype [i] = 0;
@@ -456,7 +455,7 @@ void ResetPlasmaSettings(ScriptMethodParams &) {
}
}
-void DrawPlasma(ScriptMethodParams ¶ms) {
+void AGSPalRender::DrawPlasma(ScriptMethodParams ¶ms) {
PARAMS3(int, slot, int, palstart, int, palend);
BITMAP *plasmaspr = engine->GetSpriteGraphic(slot);
if (!plasmaspr) engine->AbortGame("Plasma: Not a sprite I can load.");
@@ -505,7 +504,7 @@ void DrawPlasma(ScriptMethodParams ¶ms) {
engine->NotifySpriteUpdated(slot);
}
-void DoFire(ScriptMethodParams ¶ms) {
+void AGSPalRender::DoFire(ScriptMethodParams ¶ms) {
PARAMS8(int, spriteId, int, masksprite, int, palstart, int, palend, int, strength, int, seed, int, cutoff, int, windspeed);
BITMAP *firespr = engine->GetSpriteGraphic(masksprite);
BITMAP *firecolorspr = engine->GetSpriteGraphic(spriteId);
@@ -649,7 +648,7 @@ unsigned char MixColorAdditive (unsigned char fg,unsigned char bg,unsigned char
return result;
}
*/
-void GetColor565(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetColor565(ScriptMethodParams ¶ms) {
PARAMS3(unsigned char, r, unsigned char, g, unsigned char, b);
//BITMAP *clutspr = engine->GetSpriteGraphic (clutslot);
//if (!clutspr) engine->AbortGame ("MixColorAlpha: Can't load CLUT sprite into memory.");
@@ -662,7 +661,7 @@ void GetColor565(ScriptMethodParams ¶ms) {
params._result = (int)result;
}
-void CycleRemap(ScriptMethodParams ¶ms) {
+void AGSPalRender::CycleRemap(ScriptMethodParams ¶ms) {
PARAMS2(int, start, int, end);
if (end > start) {
// Rotate left
@@ -682,12 +681,12 @@ void CycleRemap(ScriptMethodParams ¶ms) {
}
}
-void GetRemappedSlot(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetRemappedSlot(ScriptMethodParams ¶ms) {
PARAMS1(unsigned char, slot);
params._result = cycle_remap [slot];
}
-void LoadCLUT(ScriptMethodParams ¶ms) {
+void AGSPalRender::LoadCLUT(ScriptMethodParams ¶ms) {
PARAMS1(int, slot);
if (engine->GetSpriteWidth(slot) != 256 || engine->GetSpriteHeight(slot) != 256) {
params._result = 1;
@@ -706,16 +705,16 @@ void LoadCLUT(ScriptMethodParams ¶ms) {
params._result = 0;
}
-void SetReflections(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetReflections(ScriptMethodParams ¶ms) {
PARAMS1(int, toggle);
drawreflections = toggle;
}
-void IsReflectionsOn(ScriptMethodParams ¶ms) {
+void AGSPalRender::IsReflectionsOn(ScriptMethodParams ¶ms) {
params._result = drawreflections;
}
-void GetLuminosityFromPalette(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetLuminosityFromPalette(ScriptMethodParams ¶ms) {
PARAMS1(int, slot);
AGSColor *pal = engine->GetPalette();
int lum = (pal[slot].r +
@@ -731,12 +730,12 @@ void GetLuminosityFromPalette(ScriptMethodParams ¶ms) {
-void SetStarsOriginPoint(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetStarsOriginPoint(ScriptMethodParams ¶ms) {
PARAMS2(int, x, int, y);
Starfield.originx = x;
Starfield.originy = y;
}
-void InitializeStars(ScriptMethodParams ¶ms) {
+void AGSPalRender::InitializeStars(ScriptMethodParams ¶ms) {
PARAMS2(int, slot, int, maxstars);
int32 sw, sh = 0;
BITMAP *canvas = engine->GetSpriteGraphic(slot);
@@ -756,7 +755,7 @@ void InitializeStars(ScriptMethodParams ¶ms) {
}
}
-void IterateStars(ScriptMethodParams ¶ms) {
+void AGSPalRender::IterateStars(ScriptMethodParams ¶ms) {
PARAMS1(int, slot);
long sw, sh = 0;
sw = engine->GetSpriteWidth(slot);
@@ -777,56 +776,56 @@ void IterateStars(ScriptMethodParams ¶ms) {
}
}
}
-void GetStarfieldOverscan(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetStarfieldOverscan(ScriptMethodParams ¶ms) {
params._result = Starfield.overscan;
}
-void SetStarfieldOverscan(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetStarfieldOverscan(ScriptMethodParams ¶ms) {
PARAMS1(int, overscan);
Starfield.overscan = overscan;
}
-void GetStarfieldOriginX(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetStarfieldOriginX(ScriptMethodParams ¶ms) {
params._result = Starfield.originx;
}
-void GetStarfieldOriginY(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetStarfieldOriginY(ScriptMethodParams ¶ms) {
params._result = Starfield.originy;
}
-void SetStarfieldDepthMultiplier(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetStarfieldDepthMultiplier(ScriptMethodParams ¶ms) {
PARAMS1(int, multi);
Starfield.depthmultiplier = multi;
}
-void GetStarfieldDepthMultiplier(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetStarfieldDepthMultiplier(ScriptMethodParams ¶ms) {
params._result = Starfield.depthmultiplier;
}
-void GetStarfieldMaxStars(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetStarfieldMaxStars(ScriptMethodParams ¶ms) {
params._result = Starfield.maxstars;
}
-void SetStarSpriteScaleBoost(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetStarSpriteScaleBoost(ScriptMethodParams ¶ms) {
PARAMS2(int, star, int, boost);
stars[star].scaleboost = boost;
}
-void GetStarSpriteScaleBoost(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetStarSpriteScaleBoost(ScriptMethodParams ¶ms) {
PARAMS1(int, star);
params._result = stars[star].scaleboost;
}
-void SetStarMaxRadius(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetStarMaxRadius(ScriptMethodParams ¶ms) {
PARAMS2(int, star, int, radius);
stars[star].maxrad = radius;
}
-void GetStarMaxRadius(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetStarMaxRadius(ScriptMethodParams ¶ms) {
PARAMS1(int, star);
params._result = stars[star].maxrad;
}
-void RotateStar(ScriptMethodParams ¶ms) {
+void AGSPalRender::RotateStar(ScriptMethodParams ¶ms) {
PARAMS4(int, star, int, angle, int, px, int, py);
float rsin = rot_sine_LUT[angle];
float rcos = rot_cos_LUT[angle];
@@ -843,25 +842,25 @@ void RotateStar(ScriptMethodParams ¶ms) {
i++;
}
-void GetStarX(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetStarX(ScriptMethodParams ¶ms) {
PARAMS1(int, i);
float starx = (float)stars[i].x;
params._result = PARAM_FROM_FLOAT(starx);
}
-void GetStarY(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetStarY(ScriptMethodParams ¶ms) {
PARAMS1(int, i);
float stary = (float)stars[i].y;
params._result = PARAM_FROM_FLOAT(stary);
}
-void GetStarZ(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetStarZ(ScriptMethodParams ¶ms) {
PARAMS1(int, i);
float starz = (float)stars[i].z;
params._result = PARAM_FROM_FLOAT(starz);
}
-void SetStarPosition(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetStarPosition(ScriptMethodParams ¶ms) {
PARAMS4(int, star, int32, xi, int32, yi, int32, zi);
float x = PARAM_TO_FLOAT(xi);
float y = PARAM_TO_FLOAT(yi);
@@ -871,27 +870,27 @@ void SetStarPosition(ScriptMethodParams ¶ms) {
stars[star].z = z;
}
-void SetStarColor(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetStarColor(ScriptMethodParams ¶ms) {
PARAMS2(int, star, unsigned char, color);
stars[star].color = color;
}
-void GetStarColor(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetStarColor(ScriptMethodParams ¶ms) {
PARAMS1(int, star);
params._result = (int)stars[star].color;
}
-void SetStarSprite(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetStarSprite(ScriptMethodParams ¶ms) {
PARAMS2(int, star, int, slot);
stars[star].sprite = slot;
}
-void GetStarSprite(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetStarSprite(ScriptMethodParams ¶ms) {
PARAMS1(int, star);
params._result = stars[star].sprite;
}
-void SetStarSpriteRange(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetStarSpriteRange(ScriptMethodParams ¶ms) {
PARAMS3(int, start, int, end, int, slot);
int sfix = start;
int efix = end;
@@ -901,7 +900,7 @@ void SetStarSpriteRange(ScriptMethodParams ¶ms) {
stars[i].sprite = slot;
}
-void DrawStars(ScriptMethodParams ¶ms) {
+void AGSPalRender::DrawStars(ScriptMethodParams ¶ms) {
PARAMS2(int, slot, int, maskslot);
int32 sw, sh = 0;
BITMAP *canvas = engine->GetSpriteGraphic(slot);
@@ -1082,7 +1081,7 @@ void DrawStars(ScriptMethodParams ¶ms) {
}
-void CreateTranslucentOverlay(ScriptMethodParams ¶ms) {
+void AGSPalRender::CreateTranslucentOverlay(ScriptMethodParams ¶ms) {
PARAMS6(int, id, int, spriteId, int, alpha, int, level, int, ox, int, oy);
int mask = 0, blendmode = 0;
if (params.size() > 6)
@@ -1103,7 +1102,7 @@ void CreateTranslucentOverlay(ScriptMethodParams ¶ms) {
params._result = 0;
}
-void DeleteTranslucentOverlay(ScriptMethodParams ¶ms) {
+void AGSPalRender::DeleteTranslucentOverlay(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
overlay[id].enabled = false;
overlay[id].sprite = 0;
@@ -1114,44 +1113,44 @@ void DeleteTranslucentOverlay(ScriptMethodParams ¶ms) {
params._result = 0;
}
-void MoveTranslucentOverlay(ScriptMethodParams ¶ms) {
+void AGSPalRender::MoveTranslucentOverlay(ScriptMethodParams ¶ms) {
PARAMS3(int, id, int, ox, int, oy);
overlay[id].x = ox;
overlay[id].y = oy;
params._result = 0;
}
-void GetTranslucentOverlayX(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetTranslucentOverlayX(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
params._result = overlay[id].x;
}
-void GetTranslucentOverlayY(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetTranslucentOverlayY(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
params._result = overlay[id].y;
}
-void GetTranslucentOverlaySprite(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetTranslucentOverlaySprite(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
params._result = overlay[id].sprite;
}
-void GetTranslucentOverlayLevel(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetTranslucentOverlayLevel(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
params._result = overlay[id].level;
}
-void GetTranslucentOverlayEnabled(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetTranslucentOverlayEnabled(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
params._result = overlay[id].enabled;
}
-void GetTranslucentOverlayAlpha(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetTranslucentOverlayAlpha(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
params._result = overlay[id].trans;
}
-void SetTranslucentOverlayAlpha(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetTranslucentOverlayAlpha(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, alpha);
if (alpha >= 0 && alpha < 256)
overlay[id].trans = alpha;
@@ -1160,7 +1159,7 @@ void SetTranslucentOverlayAlpha(ScriptMethodParams ¶ms) {
params._result = 0;
}
-void SetTranslucentOverlayEnabled(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetTranslucentOverlayEnabled(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, toggle);
if (toggle > 0)
overlay[id].enabled = true;
@@ -1169,13 +1168,13 @@ void SetTranslucentOverlayEnabled(ScriptMethodParams ¶ms) {
params._result = 0;
}
-void SetCharacterReflected(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetCharacterReflected(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, refl);
if (refl > 0) Reflection.Characters[id].reflect = 1;
else Reflection.Characters[id].reflect = 0;
}
-void SetObjectReflected(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetObjectReflected(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, refl);
if (refl > 0)
Reflection.Objects[id].reflect = 1;
@@ -1183,22 +1182,22 @@ void SetObjectReflected(ScriptMethodParams ¶ms) {
Reflection.Objects[id].reflect = 0;
}
-void GetCharacterReflected(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetCharacterReflected(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
params._result = Reflection.Characters[id].reflect;
}
-void GetObjectReflected(ScriptMethodParams ¶ms) {
+void AGSPalRender::GetObjectReflected(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
params._result = Reflection.Objects[id].reflect;
}
-void ReplaceCharacterReflectionView(ScriptMethodParams ¶ms) {
+void AGSPalRender::ReplaceCharacterReflectionView(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, view);
Reflection.Characters[id].replaceview = view - 1;
}
-void SetObjectReflectionIgnoreScaling(ScriptMethodParams ¶ms) {
+void AGSPalRender::SetObjectReflectionIgnoreScaling(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, wb);
if (wb) Reflection.Objects[id].ignorescaling = 1;
else Reflection.Objects[id].ignorescaling = 0;
@@ -1370,7 +1369,7 @@ int DrawReflections(int id, int charobj = 0) {
}
-void DrawTransSprite(ScriptMethodParams ¶ms) {
+void AGSPalRender::DrawTransSprite(ScriptMethodParams ¶ms) {
PARAMS3(int, spriteId, int, bg, int, translevel);
int mask = 0, blendmode = 0, use_objpal = 0;
if (params.size() > 3)
@@ -1511,189 +1510,185 @@ int DrawTranslucentOverlay(int spriteId, int translevel, int ox, int oy, int mas
/*------------------------------------------------------------------*/
-AGSPalRender::AGSPalRender() : PluginBase() {
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
- DLL_METHOD(AGS_EngineShutdown);
- DLL_METHOD(AGS_EngineOnEvent);
-}
-
const char *AGSPalRender::AGS_GetPluginName() {
return "PALgorithms Translucent Overlay Renderer";
}
void AGSPalRender::AGS_EngineStartup(IAGSEngine *lpEngine) {
+ PluginBase::AGS_EngineStartup(lpEngine);
engine = lpEngine;
// Make sure it's got the version with the features we need
if (engine->version < 3) {
engine->AbortGame("Engine interface is too old, need newer version of AGS.");
}
- engine->RegisterScriptFunction("PALInternal::LoadCLUT^1", (void *)LoadCLUT);
- engine->RegisterScriptFunction("PALInternal::CycleRemap^2", (void *)CycleRemap);
- engine->RegisterScriptFunction("PALInternal::GetColor565^3", (void *)GetColor565);
- engine->RegisterScriptFunction("PALInternal::GetLuminosityFromPalette^1", (void *)GetLuminosityFromPalette);
- engine->RegisterScriptFunction("PALInternal::FastSin^1", (void *)AGSFastSin);
- engine->RegisterScriptFunction("PALInternal::FastCos^1", (void *)AGSFastCos);
- engine->RegisterScriptFunction("PALInternal::FastRoot^1", (void *)AGSFastRoot);
- engine->RegisterScriptFunction("PALInternal::GetRemappedSlot^1", (void *)GetRemappedSlot);
- engine->RegisterScriptFunction("PALInternal::ResetRemapping^0", (void *)ResetRemapping);
- engine->RegisterScriptFunction("PALInternal::GetModifiedBackgroundImage", (void *)GetModifiedBackgroundImage);
- engine->RegisterScriptFunction("PALInternal::WriteObjectivePalette^4", (void *)WriteObjectivePalette);
- engine->RegisterScriptFunction("PALInternal::ReadObjectivePaletteR^1", (void *)ReadObjectivePaletteR);
- engine->RegisterScriptFunction("PALInternal::ReadObjectivePaletteB^1", (void *)ReadObjectivePaletteB);
- engine->RegisterScriptFunction("PALInternal::ReadObjectivePaletteG^1", (void *)ReadObjectivePaletteG);
-
- engine->RegisterScriptFunction("Raycast::Render^1", (void *)Raycast_Render);
- engine->RegisterScriptFunction("Raycast::LoadMap^4", (void *)LoadMap);
- engine->RegisterScriptFunction("Raycast::Initialize", (void *)Init_Raycaster);
- engine->RegisterScriptFunction("Raycast::MakeTextures^1", (void *)MakeTextures);
- engine->RegisterScriptFunction("Raycast::MoveForward^0", (void *)MoveForward);
- engine->RegisterScriptFunction("Raycast::MoveBackward^0", (void *)MoveBackward);
- engine->RegisterScriptFunction("Raycast::RotateLeft^0", (void *)RotateLeft);
- engine->RegisterScriptFunction("Raycast::RotateRight^0", (void *)RotateRight);
- engine->RegisterScriptFunction("Raycast::SetCameraPosition^2", (void *)Ray_SetPlayerPosition);
- engine->RegisterScriptFunction("Raycast::GetCameraX^0", (void *)Ray_GetPlayerX);
- engine->RegisterScriptFunction("Raycast::GetCameraY^0", (void *)Ray_GetPlayerY);
- engine->RegisterScriptFunction("Raycast::GetCameraAngle^0", (void *)Ray_GetPlayerAngle);
- engine->RegisterScriptFunction("Raycast::SetCameraAngle^1", (void *)Ray_SetPlayerAngle);
- engine->RegisterScriptFunction("Raycast::InitSprite^9", (void *)Ray_InitSprite);
- engine->RegisterScriptFunction("Raycast::UnloadEngine^0", (void *)QuitCleanup);
- engine->RegisterScriptFunction("Raycast::GetHotspotAtXY^2", (void *)Ray_GetHotspotAt);
- engine->RegisterScriptFunction("Raycast::GetObjectAtXY^2", (void *)Ray_GetObjectAt);
- engine->RegisterScriptFunction("Raycast::SetSpriteInteractObj^2", (void *)Ray_SetSpriteInteractObj);
- engine->RegisterScriptFunction("Raycast::GetSpriteInteractObj^1", (void *)Ray_GetSpriteInteractObj);
- engine->RegisterScriptFunction("Raycast::SetSpritePosition^3", (void *)Ray_SetSpritePosition);
- engine->RegisterScriptFunction("Raycast::SetSpriteVertOffset^2", (void *)Ray_SetSpriteVertOffset);
- engine->RegisterScriptFunction("Raycast::GetSpriteVertOffset^1", (void *)Ray_GetSpriteVertOffset);
- engine->RegisterScriptFunction("Raycast::GetSpriteX^1", (void *)Ray_GetSpriteX);
- engine->RegisterScriptFunction("Raycast::GetSpriteY^1", (void *)Ray_GetSpriteY);
- engine->RegisterScriptFunction("Raycast::SetWallHotspot^2", (void *)Ray_SetWallHotspot);
- engine->RegisterScriptFunction("Raycast::SetWallTextures^5", (void *)Ray_SetWallTextures);
- engine->RegisterScriptFunction("Raycast::SetWallSolid^5", (void *)Ray_SetWallSolid);
- engine->RegisterScriptFunction("Raycast::SetWallIgnoreLighting^5", (void *)Ray_SetWallIgnoreLighting);
- engine->RegisterScriptFunction("Raycast::SetWallAlpha^5", (void *)Ray_SetWallAlpha);
- engine->RegisterScriptFunction("Raycast::SetWallBlendType^5", (void *)Ray_SetWallBlendType);
- engine->RegisterScriptFunction("Raycast::GetMoveSpeed^0", (void *)Ray_GetMoveSpeed);
- engine->RegisterScriptFunction("Raycast::SetMoveSpeed^1", (void *)Ray_SetMoveSpeed);
- engine->RegisterScriptFunction("Raycast::GetRotSpeed^0", (void *)Ray_GetRotSpeed);
- engine->RegisterScriptFunction("Raycast::SetRotSpeed^1", (void *)Ray_SetRotSpeed);
- engine->RegisterScriptFunction("Raycast::GetWallAt^2", (void *)Ray_GetWallAt);
- engine->RegisterScriptFunction("Raycast::GetLightAt^2", (void *)Ray_GetLightAt);
- engine->RegisterScriptFunction("Raycast::SetLightAt^3", (void *)Ray_SetLightAt);
- engine->RegisterScriptFunction("Raycast::SetWallAt^3", (void *)Ray_SetWallAt);
- engine->RegisterScriptFunction("Raycast::SetPlaneY^1", (void *)Ray_SetPlaneY);
- engine->RegisterScriptFunction("Raycast::GetDistanceAt^2", (void *)Ray_GetDistanceAt);
- engine->RegisterScriptFunction("Raycast::GetSpriteAngle^1", (void *)Ray_GetSpriteAngle);
- engine->RegisterScriptFunction("Raycast::SetSpriteAngle^2", (void *)Ray_SetSpriteAngle);
- engine->RegisterScriptFunction("Raycast::SetSpriteView^2", (void *)Ray_SetSpriteView);
- engine->RegisterScriptFunction("Raycast::GetSpriteView^1", (void *)Ray_GetSpriteView);
- engine->RegisterScriptFunction("Raycast::SetSpriteFrame^2", (void *)Ray_SetSpriteFrame);
- engine->RegisterScriptFunction("Raycast::GetSpriteFrame^1", (void *)Ray_GetSpriteFrame);
- engine->RegisterScriptFunction("Raycast::SetSpritePic^2", (void *)Ray_SetSpritePic);
- engine->RegisterScriptFunction("Raycast::GetSpritePic^1", (void *)Ray_GetSpritePic);
- engine->RegisterScriptFunction("Raycast::SetSkyBox^1", (void *)Ray_SetSkyBox);
- engine->RegisterScriptFunction("Raycast::SetSpriteAlpha^2", (void *)Ray_SetSpriteAlpha);
- engine->RegisterScriptFunction("Raycast::GetSpriteAlpha^1", (void *)Ray_GetSpriteAlpha);
- engine->RegisterScriptFunction("Raycast::GetSkyBox^1", (void *)Ray_GetSkyBox);
- engine->RegisterScriptFunction("Raycast::SetAmbientLight^1", (void *)Ray_SetAmbientLight);
- engine->RegisterScriptFunction("Raycast::SetAmbientColor^2", (void *)Ray_SetAmbientColor);
- engine->RegisterScriptFunction("Raycast::GetAmbientLight^0", (void *)Ray_GetAmbientLight);
- engine->RegisterScriptFunction("Raycast::GetAmbientWeight^0", (void *)Ray_GetAmbientWeight);
- engine->RegisterScriptFunction("Raycast::GetTileX_At^2", (void *)Ray_GetTileX_At);
- engine->RegisterScriptFunction("Raycast::GetTileY_At^2", (void *)Ray_GetTileY_At);
- engine->RegisterScriptFunction("Raycast::DrawTile^2", (void *)Ray_DrawTile);
- engine->RegisterScriptFunction("Raycast::DrawOntoTile^2", (void *)Ray_DrawOntoTile);
- engine->RegisterScriptFunction("Raycast::SetNoClip^1", (void *)Ray_SetNoClip);
- engine->RegisterScriptFunction("Raycast::GetNoClip^0", (void *)Ray_GetNoClip);
- engine->RegisterScriptFunction("Raycast::GetSpriteScaleX^1", (void *)Ray_GetSpriteScaleX);
- engine->RegisterScriptFunction("Raycast::SetSpriteScaleX^2", (void *)Ray_SetSpriteScaleX);
- engine->RegisterScriptFunction("Raycast::GetSpriteScaleY^1", (void *)Ray_GetSpriteScaleY);
- engine->RegisterScriptFunction("Raycast::SetSpriteScaleY^2", (void *)Ray_SetSpriteScaleY);
- engine->RegisterScriptFunction("Raycast::GetSpriteBlendType^1", (void *)Ray_GetSpriteBlendType);
- engine->RegisterScriptFunction("Raycast::SetSpriteBlendType^2", (void *)Ray_SetSpriteBlendType);
-
-
- engine->RegisterScriptFunction("Raycast::SetFloorAt^3", (void *)Ray_SetFloorAt);
- engine->RegisterScriptFunction("Raycast::SetCeilingAt^3", (void *)Ray_SetCeilingAt);
- engine->RegisterScriptFunction("Raycast::GetCeilingAt^2", (void *)Ray_GetCeilingAt);
- engine->RegisterScriptFunction("Raycast::GetFloorAt^2", (void *)Ray_GetFloorAt);
- engine->RegisterScriptFunction("Raycast::GetLightingAt^2", (void *)Ray_GetLightingAt);
- engine->RegisterScriptFunction("Raycast::SetLightingAt^3", (void *)Ray_SetLightingAt);
- engine->RegisterScriptFunction("Raycast::GetWallHotspot^1", (void *)Ray_GetWallHotspot);
- engine->RegisterScriptFunction("Raycast::GetWallTexture^2", (void *)Ray_GetWallTexture);
- engine->RegisterScriptFunction("Raycast::GetWallSolid^2", (void *)Ray_GetWallSolid);
- engine->RegisterScriptFunction("Raycast::GetWallIgnoreLighting^2", (void *)Ray_GetWallIgnoreLighting);
- engine->RegisterScriptFunction("Raycast::GetWallAlpha^2", (void *)Ray_GetWallAlpha);
- engine->RegisterScriptFunction("Raycast::GetWallBlendType^2", (void *)Ray_GetWallBlendType);
- engine->RegisterScriptFunction("Raycast::SelectTile^3", (void *)Ray_SelectTile);
- engine->RegisterScriptFunction("Raycast::HasSeenTile^2", (void *)Ray_HasSeenTile);
-
- engine->RegisterScriptFunction("LensDistort::SetPos^2", (void *)SetLensPos);
- engine->RegisterScriptFunction("LensDistort::GetX^0", (void *)GetLensX);
- engine->RegisterScriptFunction("LensDistort::GetY^0", (void *)GetLensY);
- engine->RegisterScriptFunction("LensDistort::Set^1", (void *)SetLensDrawn);
- engine->RegisterScriptFunction("LensDistort::IsDrawn^0", (void *)GetLensDrawn);
- engine->RegisterScriptFunction("LensDistort::SetOffsetClamp^1", (void *)SetLensOffsetClamp);
- engine->RegisterScriptFunction("LensDistort::GetOffsetClamp^0", (void *)GetLensOffsetClamp);
- engine->RegisterScriptFunction("LensDistort::GetLevel^0", (void *)GetLensLevel);
- engine->RegisterScriptFunction("LensDistort::SetLevel^1", (void *)SetLensLevel);
- engine->RegisterScriptFunction("LensDistort::Initialize^6", (void *)LensInitialize);
-
- engine->RegisterScriptFunction("Translucence::CreateOverlay^8", (void *)CreateTranslucentOverlay);
- engine->RegisterScriptFunction("Translucence::DeleteOverlay^1", (void *)DeleteTranslucentOverlay);
- engine->RegisterScriptFunction("Translucence::Move^3", (void *)MoveTranslucentOverlay);
- engine->RegisterScriptFunction("Translucence::GetOverlayX^1", (void *)GetTranslucentOverlayX);
- engine->RegisterScriptFunction("Translucence::GetOverlayY^1", (void *)GetTranslucentOverlayY);
- engine->RegisterScriptFunction("Translucence::GetOverlaySprite^1", (void *)GetTranslucentOverlaySprite);
- engine->RegisterScriptFunction("Translucence::GetOverlayLevel^1", (void *)GetTranslucentOverlayLevel);
- engine->RegisterScriptFunction("Translucence::GetOverlayEnabled^1", (void *)GetTranslucentOverlayEnabled);
- engine->RegisterScriptFunction("Translucence::GetOverlayAlpha^1", (void *)GetTranslucentOverlayAlpha);
- engine->RegisterScriptFunction("Translucence::SetOverlayAlpha^2", (void *)SetTranslucentOverlayAlpha);
- engine->RegisterScriptFunction("Translucence::SetOverlayEnabled^2", (void *)SetTranslucentOverlayEnabled);
- engine->RegisterScriptFunction("Translucence::DrawTransSprite^6", (void *)DrawTransSprite);
-
- engine->RegisterScriptFunction("Starfield::GetOverscan^0", (void *)GetStarfieldOverscan);
- engine->RegisterScriptFunction("Starfield::SetOverscan^1", (void *)SetStarfieldOverscan);
- engine->RegisterScriptFunction("Starfield::GetOriginX^0", (void *)GetStarfieldOriginX);
- engine->RegisterScriptFunction("Starfield::GetOriginY^0", (void *)GetStarfieldOriginY);
- engine->RegisterScriptFunction("Starfield::SetDepthMultiplier^1", (void *)SetStarfieldDepthMultiplier);
- engine->RegisterScriptFunction("Starfield::GetDepthMultiplier^0", (void *)GetStarfieldDepthMultiplier);
- engine->RegisterScriptFunction("Starfield::GetMaxStars^0", (void *)GetStarfieldMaxStars);
- engine->RegisterScriptFunction("Starfield::SetStarSpriteScaleBoost^1", (void *)SetStarSpriteScaleBoost);
- engine->RegisterScriptFunction("Starfield::GetStarSpriteScaleBoost^0", (void *)GetStarSpriteScaleBoost);
- engine->RegisterScriptFunction("Starfield::SetStarMaxRadius^2", (void *)SetStarMaxRadius);
- engine->RegisterScriptFunction("Starfield::GetStarMaxRadius^0", (void *)GetStarMaxRadius);
- engine->RegisterScriptFunction("Starfield::GetStarX^1", (void *)GetStarX);
- engine->RegisterScriptFunction("Starfield::GetStarY^1", (void *)GetStarY);
- engine->RegisterScriptFunction("Starfield::GetStarZ^1", (void *)GetStarZ);
- engine->RegisterScriptFunction("Starfield::SetStarPosition^4", (void *)SetStarPosition);
- engine->RegisterScriptFunction("Starfield::RotateStar^4", (void *)RotateStar);
- engine->RegisterScriptFunction("Starfield::SetStarColor^2", (void *)SetStarColor);
- engine->RegisterScriptFunction("Starfield::GetStarColor^1", (void *)GetStarColor);
- engine->RegisterScriptFunction("Starfield::SetStarSprite^2", (void *)SetStarSprite);
- engine->RegisterScriptFunction("Starfield::GetStarSprite^1", (void *)GetStarSprite);
- engine->RegisterScriptFunction("Starfield::SetStarSpriteRange^3", (void *)SetStarSpriteRange);
- engine->RegisterScriptFunction("Starfield::Initialize^2", (void *)InitializeStars);
- engine->RegisterScriptFunction("Starfield::Iterate^1", (void *)IterateStars);
- engine->RegisterScriptFunction("Starfield::Draw^2", (void *)DrawStars);
- engine->RegisterScriptFunction("Starfield::SetOriginPoint^2", (void *)SetStarsOriginPoint);
-
- engine->RegisterScriptFunction("Plasma::DoFire^8", (void *)DoFire);
- engine->RegisterScriptFunction("Plasma::SetPlasmaType^5", (void *)SetPlasmaType);
- engine->RegisterScriptFunction("Plasma::ResetPlasmaSettings^0", (void *)ResetPlasmaSettings);
- engine->RegisterScriptFunction("Plasma::DrawPlasma^3", (void *)DrawPlasma);
- engine->RegisterScriptFunction("Plasma::SetRootType^1", (void *)SetPlasmaRootType);
- engine->RegisterScriptFunction("Plasma::GetRootType^0", (void *)GetPlasmaRootType);
-
- engine->RegisterScriptFunction("Reflections::Set^1", (void *)SetReflections);
- engine->RegisterScriptFunction("Reflections::IsReflecting^0", (void *)IsReflectionsOn);
- engine->RegisterScriptFunction("Reflections::SetCharacterReflected^2", (void *)SetCharacterReflected);
- engine->RegisterScriptFunction("Reflections::GetCharacterReflected^1", (void *)GetCharacterReflected);
- engine->RegisterScriptFunction("Reflections::SetObjectReflected^2", (void *)SetObjectReflected);
- engine->RegisterScriptFunction("Reflections::GetObjectReflected^1", (void *)GetObjectReflected);
- engine->RegisterScriptFunction("Reflections::ReplaceCharacterReflectionView^2", (void *)ReplaceCharacterReflectionView);
- engine->RegisterScriptFunction("Reflections::SetObjectReflectionIgnoreScaling^2", (void *)SetObjectReflectionIgnoreScaling);
+
+ SCRIPT_METHOD(PALInternal::LoadCLUT^1, AGSPalRender::LoadCLUT);
+ SCRIPT_METHOD(PALInternal::CycleRemap^2, AGSPalRender::CycleRemap);
+ SCRIPT_METHOD(PALInternal::GetColor565^3, AGSPalRender::GetColor565);
+ SCRIPT_METHOD(PALInternal::GetLuminosityFromPalette^1, AGSPalRender::GetLuminosityFromPalette);
+ SCRIPT_METHOD(PALInternal::FastSin^1, AGSPalRender::AGSFastSin);
+ SCRIPT_METHOD(PALInternal::FastCos^1, AGSPalRender::AGSFastCos);
+ SCRIPT_METHOD(PALInternal::FastRoot^1, AGSPalRender::AGSFastRoot);
+ SCRIPT_METHOD(PALInternal::GetRemappedSlot^1, AGSPalRender::GetRemappedSlot);
+ SCRIPT_METHOD(PALInternal::ResetRemapping^0, AGSPalRender::ResetRemapping);
+ SCRIPT_METHOD(PALInternal::GetModifiedBackgroundImage, AGSPalRender::GetModifiedBackgroundImage);
+ SCRIPT_METHOD(PALInternal::WriteObjectivePalette^4, AGSPalRender::WriteObjectivePalette);
+ SCRIPT_METHOD(PALInternal::ReadObjectivePaletteR^1, AGSPalRender::ReadObjectivePaletteR);
+ SCRIPT_METHOD(PALInternal::ReadObjectivePaletteB^1, AGSPalRender::ReadObjectivePaletteB);
+ SCRIPT_METHOD(PALInternal::ReadObjectivePaletteG^1, AGSPalRender::ReadObjectivePaletteG);
+
+ SCRIPT_METHOD(Raycast::Render^1, AGSPalRender::Raycast_Render);
+ SCRIPT_METHOD(Raycast::LoadMap^4, AGSPalRender::LoadMap);
+ SCRIPT_METHOD(Raycast::Initialize, AGSPalRender::Init_Raycaster);
+ SCRIPT_METHOD(Raycast::MakeTextures^1, AGSPalRender::MakeTextures);
+ SCRIPT_METHOD(Raycast::MoveForward^0, AGSPalRender::MoveForward);
+ SCRIPT_METHOD(Raycast::MoveBackward^0, AGSPalRender::MoveBackward);
+ SCRIPT_METHOD(Raycast::RotateLeft^0, AGSPalRender::RotateLeft);
+ SCRIPT_METHOD(Raycast::RotateRight^0, AGSPalRender::RotateRight);
+ SCRIPT_METHOD(Raycast::SetCameraPosition^2, AGSPalRender::Ray_SetPlayerPosition);
+ SCRIPT_METHOD(Raycast::GetCameraX^0, AGSPalRender::Ray_GetPlayerX);
+ SCRIPT_METHOD(Raycast::GetCameraY^0, AGSPalRender::Ray_GetPlayerY);
+ SCRIPT_METHOD(Raycast::GetCameraAngle^0, AGSPalRender::Ray_GetPlayerAngle);
+ SCRIPT_METHOD(Raycast::SetCameraAngle^1, AGSPalRender::Ray_SetPlayerAngle);
+ SCRIPT_METHOD(Raycast::InitSprite^9, AGSPalRender::Ray_InitSprite);
+ SCRIPT_METHOD(Raycast::UnloadEngine^0, AGSPalRender::QuitCleanup);
+ SCRIPT_METHOD(Raycast::GetHotspotAtXY^2, AGSPalRender::Ray_GetHotspotAt);
+ SCRIPT_METHOD(Raycast::GetObjectAtXY^2, AGSPalRender::Ray_GetObjectAt);
+ SCRIPT_METHOD(Raycast::SetSpriteInteractObj^2, AGSPalRender::Ray_SetSpriteInteractObj);
+ SCRIPT_METHOD(Raycast::GetSpriteInteractObj^1, AGSPalRender::Ray_GetSpriteInteractObj);
+ SCRIPT_METHOD(Raycast::SetSpritePosition^3, AGSPalRender::Ray_SetSpritePosition);
+ SCRIPT_METHOD(Raycast::SetSpriteVertOffset^2, AGSPalRender::Ray_SetSpriteVertOffset);
+ SCRIPT_METHOD(Raycast::GetSpriteVertOffset^1, AGSPalRender::Ray_GetSpriteVertOffset);
+ SCRIPT_METHOD(Raycast::GetSpriteX^1, AGSPalRender::Ray_GetSpriteX);
+ SCRIPT_METHOD(Raycast::GetSpriteY^1, AGSPalRender::Ray_GetSpriteY);
+ SCRIPT_METHOD(Raycast::SetWallHotspot^2, AGSPalRender::Ray_SetWallHotspot);
+ SCRIPT_METHOD(Raycast::SetWallTextures^5, AGSPalRender::Ray_SetWallTextures);
+ SCRIPT_METHOD(Raycast::SetWallSolid^5, AGSPalRender::Ray_SetWallSolid);
+ SCRIPT_METHOD(Raycast::SetWallIgnoreLighting^5, AGSPalRender::Ray_SetWallIgnoreLighting);
+ SCRIPT_METHOD(Raycast::SetWallAlpha^5, AGSPalRender::Ray_SetWallAlpha);
+ SCRIPT_METHOD(Raycast::SetWallBlendType^5, AGSPalRender::Ray_SetWallBlendType);
+ SCRIPT_METHOD(Raycast::GetMoveSpeed^0, AGSPalRender::Ray_GetMoveSpeed);
+ SCRIPT_METHOD(Raycast::SetMoveSpeed^1, AGSPalRender::Ray_SetMoveSpeed);
+ SCRIPT_METHOD(Raycast::GetRotSpeed^0, AGSPalRender::Ray_GetRotSpeed);
+ SCRIPT_METHOD(Raycast::SetRotSpeed^1, AGSPalRender::Ray_SetRotSpeed);
+ SCRIPT_METHOD(Raycast::GetWallAt^2, AGSPalRender::Ray_GetWallAt);
+ SCRIPT_METHOD(Raycast::GetLightAt^2, AGSPalRender::Ray_GetLightAt);
+ SCRIPT_METHOD(Raycast::SetLightAt^3, AGSPalRender::Ray_SetLightAt);
+ SCRIPT_METHOD(Raycast::SetWallAt^3, AGSPalRender::Ray_SetWallAt);
+ SCRIPT_METHOD(Raycast::SetPlaneY^1, AGSPalRender::Ray_SetPlaneY);
+ SCRIPT_METHOD(Raycast::GetDistanceAt^2, AGSPalRender::Ray_GetDistanceAt);
+ SCRIPT_METHOD(Raycast::GetSpriteAngle^1, AGSPalRender::Ray_GetSpriteAngle);
+ SCRIPT_METHOD(Raycast::SetSpriteAngle^2, AGSPalRender::Ray_SetSpriteAngle);
+ SCRIPT_METHOD(Raycast::SetSpriteView^2, AGSPalRender::Ray_SetSpriteView);
+ SCRIPT_METHOD(Raycast::GetSpriteView^1, AGSPalRender::Ray_GetSpriteView);
+ SCRIPT_METHOD(Raycast::SetSpriteFrame^2, AGSPalRender::Ray_SetSpriteFrame);
+ SCRIPT_METHOD(Raycast::GetSpriteFrame^1, AGSPalRender::Ray_GetSpriteFrame);
+ SCRIPT_METHOD(Raycast::SetSpritePic^2, AGSPalRender::Ray_SetSpritePic);
+ SCRIPT_METHOD(Raycast::GetSpritePic^1, AGSPalRender::Ray_GetSpritePic);
+ SCRIPT_METHOD(Raycast::SetSkyBox^1, AGSPalRender::Ray_SetSkyBox);
+ SCRIPT_METHOD(Raycast::SetSpriteAlpha^2, AGSPalRender::Ray_SetSpriteAlpha);
+ SCRIPT_METHOD(Raycast::GetSpriteAlpha^1, AGSPalRender::Ray_GetSpriteAlpha);
+ SCRIPT_METHOD(Raycast::GetSkyBox^1, AGSPalRender::Ray_GetSkyBox);
+ SCRIPT_METHOD(Raycast::SetAmbientLight^1, AGSPalRender::Ray_SetAmbientLight);
+ SCRIPT_METHOD(Raycast::SetAmbientColor^2, AGSPalRender::Ray_SetAmbientColor);
+ SCRIPT_METHOD(Raycast::GetAmbientLight^0, AGSPalRender::Ray_GetAmbientLight);
+ SCRIPT_METHOD(Raycast::GetAmbientWeight^0, AGSPalRender::Ray_GetAmbientWeight);
+ SCRIPT_METHOD(Raycast::GetTileX_At^2, AGSPalRender::Ray_GetTileX_At);
+ SCRIPT_METHOD(Raycast::GetTileY_At^2, AGSPalRender::Ray_GetTileY_At);
+ SCRIPT_METHOD(Raycast::DrawTile^2, AGSPalRender::Ray_DrawTile);
+ SCRIPT_METHOD(Raycast::DrawOntoTile^2, AGSPalRender::Ray_DrawOntoTile);
+ SCRIPT_METHOD(Raycast::SetNoClip^1, AGSPalRender::Ray_SetNoClip);
+ SCRIPT_METHOD(Raycast::GetNoClip^0, AGSPalRender::Ray_GetNoClip);
+ SCRIPT_METHOD(Raycast::GetSpriteScaleX^1, AGSPalRender::Ray_GetSpriteScaleX);
+ SCRIPT_METHOD(Raycast::SetSpriteScaleX^2, AGSPalRender::Ray_SetSpriteScaleX);
+ SCRIPT_METHOD(Raycast::GetSpriteScaleY^1, AGSPalRender::Ray_GetSpriteScaleY);
+ SCRIPT_METHOD(Raycast::SetSpriteScaleY^2, AGSPalRender::Ray_SetSpriteScaleY);
+ SCRIPT_METHOD(Raycast::GetSpriteBlendType^1, AGSPalRender::Ray_GetSpriteBlendType);
+ SCRIPT_METHOD(Raycast::SetSpriteBlendType^2, AGSPalRender::Ray_SetSpriteBlendType);
+
+
+ SCRIPT_METHOD(Raycast::SetFloorAt^3, AGSPalRender::Ray_SetFloorAt);
+ SCRIPT_METHOD(Raycast::SetCeilingAt^3, AGSPalRender::Ray_SetCeilingAt);
+ SCRIPT_METHOD(Raycast::GetCeilingAt^2, AGSPalRender::Ray_GetCeilingAt);
+ SCRIPT_METHOD(Raycast::GetFloorAt^2, AGSPalRender::Ray_GetFloorAt);
+ SCRIPT_METHOD(Raycast::GetLightingAt^2, AGSPalRender::Ray_GetLightingAt);
+ SCRIPT_METHOD(Raycast::SetLightingAt^3, AGSPalRender::Ray_SetLightingAt);
+ SCRIPT_METHOD(Raycast::GetWallHotspot^1, AGSPalRender::Ray_GetWallHotspot);
+ SCRIPT_METHOD(Raycast::GetWallTexture^2, AGSPalRender::Ray_GetWallTexture);
+ SCRIPT_METHOD(Raycast::GetWallSolid^2, AGSPalRender::Ray_GetWallSolid);
+ SCRIPT_METHOD(Raycast::GetWallIgnoreLighting^2, AGSPalRender::Ray_GetWallIgnoreLighting);
+ SCRIPT_METHOD(Raycast::GetWallAlpha^2, AGSPalRender::Ray_GetWallAlpha);
+ SCRIPT_METHOD(Raycast::GetWallBlendType^2, AGSPalRender::Ray_GetWallBlendType);
+ SCRIPT_METHOD(Raycast::SelectTile^3, AGSPalRender::Ray_SelectTile);
+ SCRIPT_METHOD(Raycast::HasSeenTile^2, AGSPalRender::Ray_HasSeenTile);
+
+ SCRIPT_METHOD(LensDistort::SetPos^2, AGSPalRender::SetLensPos);
+ SCRIPT_METHOD(LensDistort::GetX^0, AGSPalRender::GetLensX);
+ SCRIPT_METHOD(LensDistort::GetY^0, AGSPalRender::GetLensY);
+ SCRIPT_METHOD(LensDistort::Set^1, AGSPalRender::SetLensDrawn);
+ SCRIPT_METHOD(LensDistort::IsDrawn^0, AGSPalRender::GetLensDrawn);
+ SCRIPT_METHOD(LensDistort::SetOffsetClamp^1, AGSPalRender::SetLensOffsetClamp);
+ SCRIPT_METHOD(LensDistort::GetOffsetClamp^0, AGSPalRender::GetLensOffsetClamp);
+ SCRIPT_METHOD(LensDistort::GetLevel^0, AGSPalRender::GetLensLevel);
+ SCRIPT_METHOD(LensDistort::SetLevel^1, AGSPalRender::SetLensLevel);
+ SCRIPT_METHOD(LensDistort::Initialize^6, AGSPalRender::LensInitialize);
+
+ SCRIPT_METHOD(Translucence::CreateOverlay^8, AGSPalRender::CreateTranslucentOverlay);
+ SCRIPT_METHOD(Translucence::DeleteOverlay^1, AGSPalRender::DeleteTranslucentOverlay);
+ SCRIPT_METHOD(Translucence::Move^3, AGSPalRender::MoveTranslucentOverlay);
+ SCRIPT_METHOD(Translucence::GetOverlayX^1, AGSPalRender::GetTranslucentOverlayX);
+ SCRIPT_METHOD(Translucence::GetOverlayY^1, AGSPalRender::GetTranslucentOverlayY);
+ SCRIPT_METHOD(Translucence::GetOverlaySprite^1, AGSPalRender::GetTranslucentOverlaySprite);
+ SCRIPT_METHOD(Translucence::GetOverlayLevel^1, AGSPalRender::GetTranslucentOverlayLevel);
+ SCRIPT_METHOD(Translucence::GetOverlayEnabled^1, AGSPalRender::GetTranslucentOverlayEnabled);
+ SCRIPT_METHOD(Translucence::GetOverlayAlpha^1, AGSPalRender::GetTranslucentOverlayAlpha);
+ SCRIPT_METHOD(Translucence::SetOverlayAlpha^2, AGSPalRender::SetTranslucentOverlayAlpha);
+ SCRIPT_METHOD(Translucence::SetOverlayEnabled^2, AGSPalRender::SetTranslucentOverlayEnabled);
+ SCRIPT_METHOD(Translucence::DrawTransSprite^6, AGSPalRender::DrawTransSprite);
+
+ SCRIPT_METHOD(Starfield::GetOverscan^0, AGSPalRender::GetStarfieldOverscan);
+ SCRIPT_METHOD(Starfield::SetOverscan^1, AGSPalRender::SetStarfieldOverscan);
+ SCRIPT_METHOD(Starfield::GetOriginX^0, AGSPalRender::GetStarfieldOriginX);
+ SCRIPT_METHOD(Starfield::GetOriginY^0, AGSPalRender::GetStarfieldOriginY);
+ SCRIPT_METHOD(Starfield::SetDepthMultiplier^1, AGSPalRender::SetStarfieldDepthMultiplier);
+ SCRIPT_METHOD(Starfield::GetDepthMultiplier^0, AGSPalRender::GetStarfieldDepthMultiplier);
+ SCRIPT_METHOD(Starfield::GetMaxStars^0, AGSPalRender::GetStarfieldMaxStars);
+ SCRIPT_METHOD(Starfield::SetStarSpriteScaleBoost^1, AGSPalRender::SetStarSpriteScaleBoost);
+ SCRIPT_METHOD(Starfield::GetStarSpriteScaleBoost^0, AGSPalRender::GetStarSpriteScaleBoost);
+ SCRIPT_METHOD(Starfield::SetStarMaxRadius^2, AGSPalRender::SetStarMaxRadius);
+ SCRIPT_METHOD(Starfield::GetStarMaxRadius^0, AGSPalRender::GetStarMaxRadius);
+ SCRIPT_METHOD(Starfield::GetStarX^1, AGSPalRender::GetStarX);
+ SCRIPT_METHOD(Starfield::GetStarY^1, AGSPalRender::GetStarY);
+ SCRIPT_METHOD(Starfield::GetStarZ^1, AGSPalRender::GetStarZ);
+ SCRIPT_METHOD(Starfield::SetStarPosition^4, AGSPalRender::SetStarPosition);
+ SCRIPT_METHOD(Starfield::RotateStar^4, AGSPalRender::RotateStar);
+ SCRIPT_METHOD(Starfield::SetStarColor^2, AGSPalRender::SetStarColor);
+ SCRIPT_METHOD(Starfield::GetStarColor^1, AGSPalRender::GetStarColor);
+ SCRIPT_METHOD(Starfield::SetStarSprite^2, AGSPalRender::SetStarSprite);
+ SCRIPT_METHOD(Starfield::GetStarSprite^1, AGSPalRender::GetStarSprite);
+ SCRIPT_METHOD(Starfield::SetStarSpriteRange^3, AGSPalRender::SetStarSpriteRange);
+ SCRIPT_METHOD(Starfield::Initialize^2, AGSPalRender::InitializeStars);
+ SCRIPT_METHOD(Starfield::Iterate^1, AGSPalRender::IterateStars);
+ SCRIPT_METHOD(Starfield::Draw^2, AGSPalRender::DrawStars);
+ SCRIPT_METHOD(Starfield::SetOriginPoint^2, AGSPalRender::SetStarsOriginPoint);
+
+ SCRIPT_METHOD(Plasma::DoFire^8, AGSPalRender::DoFire);
+ SCRIPT_METHOD(Plasma::SetPlasmaType^5, AGSPalRender::SetPlasmaType);
+ SCRIPT_METHOD(Plasma::ResetPlasmaSettings^0, AGSPalRender::ResetPlasmaSettings);
+ SCRIPT_METHOD(Plasma::DrawPlasma^3, AGSPalRender::DrawPlasma);
+ SCRIPT_METHOD(Plasma::SetRootType^1, AGSPalRender::SetPlasmaRootType);
+ SCRIPT_METHOD(Plasma::GetRootType^0, AGSPalRender::GetPlasmaRootType);
+
+ SCRIPT_METHOD(Reflections::Set^1, AGSPalRender::SetReflections);
+ SCRIPT_METHOD(Reflections::IsReflecting^0, AGSPalRender::IsReflectionsOn);
+ SCRIPT_METHOD(Reflections::SetCharacterReflected^2, AGSPalRender::SetCharacterReflected);
+ SCRIPT_METHOD(Reflections::GetCharacterReflected^1, AGSPalRender::GetCharacterReflected);
+ SCRIPT_METHOD(Reflections::SetObjectReflected^2, AGSPalRender::SetObjectReflected);
+ SCRIPT_METHOD(Reflections::GetObjectReflected^1, AGSPalRender::GetObjectReflected);
+ SCRIPT_METHOD(Reflections::ReplaceCharacterReflectionView^2, AGSPalRender::ReplaceCharacterReflectionView);
+ SCRIPT_METHOD(Reflections::SetObjectReflectionIgnoreScaling^2, AGSPalRender::SetObjectReflectionIgnoreScaling);
+
engine->RequestEventHook(AGSE_PRESCREENDRAW);
engine->RequestEventHook(AGSE_PREGUIDRAW);
engine->RequestEventHook(AGSE_POSTSCREENDRAW);
diff --git a/engines/ags/plugins/ags_pal_render/ags_pal_render.h b/engines/ags/plugins/ags_pal_render/ags_pal_render.h
index a59d05be00..145707000d 100644
--- a/engines/ags/plugins/ags_pal_render/ags_pal_render.h
+++ b/engines/ags/plugins/ags_pal_render/ags_pal_render.h
@@ -23,7 +23,7 @@
#ifndef AGS_PLUGINS_AGS_PAL_RENDER_AGS_PAL_RENDER_H
#define AGS_PLUGINS_AGS_PAL_RENDER_AGS_PAL_RENDER_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
#include "ags/plugins/serializer.h"
namespace AGS3 {
@@ -31,14 +31,246 @@ namespace Plugins {
namespace AGSPalRender {
class AGSPalRender : public PluginBase {
+ SCRIPT_HASH(AGSPalRender)
private:
- const char *AGS_GetPluginName();
- void AGS_EngineStartup(IAGSEngine *lpEngine);
- void AGS_EngineShutdown();
- int64 AGS_EngineOnEvent(int event, NumberPtr data);
void syncGame(Serializer &s);
public:
- AGSPalRender();
+ AGSPalRender() : PluginBase() {}
+ virtual ~AGSPalRender() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *lpEngine) override;
+ void AGS_EngineShutdown() override;
+ int64 AGS_EngineOnEvent(int event, NumberPtr data) override;
+
+ /**
+ * @defgroup PALInternal
+ * @{
+ */
+
+ void LoadCLUT(ScriptMethodParams ¶ms);
+ void CycleRemap(ScriptMethodParams ¶ms);
+ void GetColor565(ScriptMethodParams ¶ms);
+ void GetLuminosityFromPalette(ScriptMethodParams ¶ms);
+ void AGSFastSin(ScriptMethodParams ¶ms);
+ void AGSFastCos(ScriptMethodParams ¶ms);
+ void AGSFastRoot(ScriptMethodParams ¶ms);
+ void GetRemappedSlot(ScriptMethodParams ¶ms);
+ void ResetRemapping(ScriptMethodParams ¶ms);
+ void GetModifiedBackgroundImage(ScriptMethodParams ¶ms);
+ void WriteObjectivePalette(ScriptMethodParams ¶ms);
+ void ReadObjectivePaletteR(ScriptMethodParams ¶ms);
+ void ReadObjectivePaletteB(ScriptMethodParams ¶ms);
+ void ReadObjectivePaletteG(ScriptMethodParams ¶ms);
+
+ /**@}*/
+
+ /**
+ * @defgroup LensDistort
+ * @{
+ */
+
+ void SetLensPos(ScriptMethodParams ¶ms);
+ void GetLensX(ScriptMethodParams ¶ms);
+ void GetLensY(ScriptMethodParams ¶ms);
+ void SetLensDrawn(ScriptMethodParams ¶ms);
+ void GetLensDrawn(ScriptMethodParams ¶ms);
+ void SetLensOffsetClamp(ScriptMethodParams ¶ms);
+ void GetLensOffsetClamp(ScriptMethodParams ¶ms);
+ void GetLensLevel(ScriptMethodParams ¶ms);
+ void SetLensLevel(ScriptMethodParams ¶ms);
+ void LensInitialize(ScriptMethodParams ¶ms);
+
+ /**@}*/
+
+ /**
+ * @defgroup Translucence
+ * @{
+ */
+
+ void CreateTranslucentOverlay(ScriptMethodParams ¶ms);
+ void DeleteTranslucentOverlay(ScriptMethodParams ¶ms);
+ void MoveTranslucentOverlay(ScriptMethodParams ¶ms);
+ void GetTranslucentOverlayX(ScriptMethodParams ¶ms);
+ void GetTranslucentOverlayY(ScriptMethodParams ¶ms);
+ void GetTranslucentOverlaySprite(ScriptMethodParams ¶ms);
+ void GetTranslucentOverlayLevel(ScriptMethodParams ¶ms);
+ void GetTranslucentOverlayEnabled(ScriptMethodParams ¶ms);
+ void GetTranslucentOverlayAlpha(ScriptMethodParams ¶ms);
+ void SetTranslucentOverlayAlpha(ScriptMethodParams ¶ms);
+ void SetTranslucentOverlayEnabled(ScriptMethodParams ¶ms);
+ void DrawTransSprite(ScriptMethodParams ¶ms);
+
+ /**@}*/
+
+ /**
+ * @defgroup Starfield
+ * @{
+ */
+
+ void GetStarfieldOverscan(ScriptMethodParams ¶ms);
+ void SetStarfieldOverscan(ScriptMethodParams ¶ms);
+ void GetStarfieldOriginX(ScriptMethodParams ¶ms);
+ void GetStarfieldOriginY(ScriptMethodParams ¶ms);
+ void SetStarfieldDepthMultiplier(ScriptMethodParams ¶ms);
+ void GetStarfieldDepthMultiplier(ScriptMethodParams ¶ms);
+ void GetStarfieldMaxStars(ScriptMethodParams ¶ms);
+ void SetStarSpriteScaleBoost(ScriptMethodParams ¶ms);
+ void GetStarSpriteScaleBoost(ScriptMethodParams ¶ms);
+ void SetStarMaxRadius(ScriptMethodParams ¶ms);
+ void GetStarMaxRadius(ScriptMethodParams ¶ms);
+ void GetStarX(ScriptMethodParams ¶ms);
+ void GetStarY(ScriptMethodParams ¶ms);
+ void GetStarZ(ScriptMethodParams ¶ms);
+ void SetStarPosition(ScriptMethodParams ¶ms);
+ void RotateStar(ScriptMethodParams ¶ms);
+ void SetStarColor(ScriptMethodParams ¶ms);
+ void GetStarColor(ScriptMethodParams ¶ms);
+ void SetStarSprite(ScriptMethodParams ¶ms);
+ void GetStarSprite(ScriptMethodParams ¶ms);
+ void SetStarSpriteRange(ScriptMethodParams ¶ms);
+ void InitializeStars(ScriptMethodParams ¶ms);
+ void IterateStars(ScriptMethodParams ¶ms);
+ void DrawStars(ScriptMethodParams ¶ms);
+ void SetStarsOriginPoint(ScriptMethodParams ¶ms);
+
+ /**@}*/
+
+ /**
+ * @defgroup Plasma
+ * @{
+ */
+
+ void DoFire(ScriptMethodParams ¶ms);
+ void SetPlasmaType(ScriptMethodParams ¶ms);
+ void ResetPlasmaSettings(ScriptMethodParams ¶ms);
+ void DrawPlasma(ScriptMethodParams ¶ms);
+ void SetPlasmaRootType(ScriptMethodParams ¶ms);
+ void GetPlasmaRootType(ScriptMethodParams ¶ms);
+
+ /**@}*/
+
+ /**
+ * @defgroup Reflections
+ * @{
+ */
+
+ void SetReflections(ScriptMethodParams ¶ms);
+ void IsReflectionsOn(ScriptMethodParams ¶ms);
+ void SetCharacterReflected(ScriptMethodParams ¶ms);
+ void GetCharacterReflected(ScriptMethodParams ¶ms);
+ void SetObjectReflected(ScriptMethodParams ¶ms);
+ void GetObjectReflected(ScriptMethodParams ¶ms);
+ void ReplaceCharacterReflectionView(ScriptMethodParams ¶ms);
+ void SetObjectReflectionIgnoreScaling(ScriptMethodParams ¶ms);
+
+ /**@}*/
+
+ /**
+ * @defgroup raycast
+ * @{
+ */
+
+ void MakeTextures(ScriptMethodParams ¶ms);
+ void Raycast_Render(ScriptMethodParams ¶ms);
+ void MoveForward(ScriptMethodParams ¶ms);
+ void MoveBackward(ScriptMethodParams ¶ms);
+ void RotateLeft(ScriptMethodParams ¶ms);
+ void RotateRight(ScriptMethodParams ¶ms);
+ void Init_Raycaster(ScriptMethodParams ¶ms);
+ void QuitCleanup(ScriptMethodParams ¶ms);
+ void LoadMap(ScriptMethodParams ¶ms);
+ void Ray_InitSprite(ScriptMethodParams ¶ms);
+ void Ray_SetPlayerPosition(ScriptMethodParams ¶ms);
+ void Ray_GetPlayerX(ScriptMethodParams ¶ms);
+ void Ray_GetPlayerY(ScriptMethodParams ¶ms);
+ void Ray_GetPlayerAngle(ScriptMethodParams ¶ms);
+ void Ray_SetPlayerAngle(ScriptMethodParams ¶ms);
+
+ void Ray_GetWallHotspot(ScriptMethodParams ¶ms);
+ void Ray_GetWallTexture(ScriptMethodParams ¶ms);
+ void Ray_GetWallSolid(ScriptMethodParams ¶ms);
+ void Ray_GetWallIgnoreLighting(ScriptMethodParams ¶ms);
+ void Ray_GetWallAlpha(ScriptMethodParams ¶ms);
+ void Ray_GetWallBlendType(ScriptMethodParams ¶ms);
+
+ void Ray_SelectTile(ScriptMethodParams ¶ms);
+
+ void Ray_GetHotspotAt(ScriptMethodParams ¶ms);
+ void Ray_GetObjectAt(ScriptMethodParams ¶ms);
+
+ void Ray_DrawTile(ScriptMethodParams ¶ms);
+ void Ray_DrawOntoTile(ScriptMethodParams ¶ms);
+ void Ray_SetNoClip(ScriptMethodParams ¶ms);
+ void Ray_GetNoClip(ScriptMethodParams ¶ms);
+ void Ray_SetSpriteInteractObj(ScriptMethodParams ¶ms);
+ void Ray_GetSpriteInteractObj(ScriptMethodParams ¶ms);
+ void Ray_SetSpritePosition(ScriptMethodParams ¶ms);
+ void Ray_SetSpriteVertOffset(ScriptMethodParams ¶ms);
+ void Ray_GetSpriteVertOffset(ScriptMethodParams ¶ms);
+ void Ray_GetSpriteX(ScriptMethodParams ¶ms);
+ void Ray_GetSpriteY(ScriptMethodParams ¶ms);
+
+ void Ray_SetWallHotspot(ScriptMethodParams ¶ms);
+ void Ray_SetWallTextures(ScriptMethodParams ¶ms);
+ void Ray_SetWallSolid(ScriptMethodParams ¶ms);
+ void Ray_SetWallIgnoreLighting(ScriptMethodParams ¶ms);
+ void Ray_SetWallAlpha(ScriptMethodParams ¶ms);
+ void Ray_SetWallBlendType(ScriptMethodParams ¶ms);
+
+ void Ray_GetMoveSpeed(ScriptMethodParams ¶ms);
+ void Ray_SetMoveSpeed(ScriptMethodParams ¶ms);
+ void Ray_GetRotSpeed(ScriptMethodParams ¶ms);
+ void Ray_SetRotSpeed(ScriptMethodParams ¶ms);
+ void Ray_GetWallAt(ScriptMethodParams ¶ms);
+ void Ray_GetLightAt(ScriptMethodParams ¶ms);
+ void Ray_SetLightAt(ScriptMethodParams ¶ms);
+ void Ray_SetWallAt(ScriptMethodParams ¶ms);
+ void Ray_GetPlaneY(ScriptMethodParams ¶ms);
+ void Ray_SetPlaneY(ScriptMethodParams ¶ms);
+ void Ray_GetDistanceAt(ScriptMethodParams ¶ms);
+ void Ray_GetSpriteAngle(ScriptMethodParams ¶ms);
+ void Ray_SetSpriteAngle(ScriptMethodParams ¶ms);
+ void Ray_SetSpriteView(ScriptMethodParams ¶ms);
+ void Ray_GetSpriteView(ScriptMethodParams ¶ms);
+ void Ray_SetSpriteFrame(ScriptMethodParams ¶ms);
+ void Ray_GetSpriteFrame(ScriptMethodParams ¶ms);
+
+ void Ray_GetTileX_At(ScriptMethodParams ¶ms);
+ void Ray_GetTileY_At(ScriptMethodParams ¶ms);
+
+ void Ray_SetSkyBox(ScriptMethodParams ¶ms);
+ void Ray_GetSkyBox(ScriptMethodParams ¶ms);
+
+ void Ray_SetAmbientLight(ScriptMethodParams ¶ms);
+ void Ray_GetAmbientLight(ScriptMethodParams ¶ms);
+ void Ray_SetAmbientColor(ScriptMethodParams ¶ms);
+
+
+ void Ray_GetSpriteAlpha(ScriptMethodParams ¶ms);
+ void Ray_SetSpriteAlpha(ScriptMethodParams ¶ms);
+ void Ray_GetSpritePic(ScriptMethodParams ¶ms);
+ void Ray_SetSpritePic(ScriptMethodParams ¶ms);
+
+ void Ray_GetSpriteScaleX(ScriptMethodParams ¶ms);
+ void Ray_SetSpriteScaleX(ScriptMethodParams ¶ms);
+ void Ray_GetSpriteScaleY(ScriptMethodParams ¶ms);
+ void Ray_SetSpriteScaleY(ScriptMethodParams ¶ms);
+
+ void Ray_SetSpriteBlendType(ScriptMethodParams ¶ms);
+ void Ray_GetSpriteBlendType(ScriptMethodParams ¶ms);
+
+ void Ray_SetFloorAt(ScriptMethodParams ¶ms);
+ void Ray_SetCeilingAt(ScriptMethodParams ¶ms);
+ void Ray_GetCeilingAt(ScriptMethodParams ¶ms);
+ void Ray_GetFloorAt(ScriptMethodParams ¶ms);
+ void Ray_GetLightingAt(ScriptMethodParams ¶ms);
+ void Ray_SetLightingAt(ScriptMethodParams ¶ms);
+ void Ray_GetAmbientWeight(ScriptMethodParams ¶ms);
+
+ void Ray_HasSeenTile(ScriptMethodParams ¶ms);
+
+ /**@}*/
};
} // namespace AGSPalRender
diff --git a/engines/ags/plugins/ags_pal_render/pal_render.h b/engines/ags/plugins/ags_pal_render/pal_render.h
index 6933b6d5b0..f5ddff1007 100644
--- a/engines/ags/plugins/ags_pal_render/pal_render.h
+++ b/engines/ags/plugins/ags_pal_render/pal_render.h
@@ -51,7 +51,7 @@ class Mix {
public:
//unsigned char MixColorAlpha (unsigned char fg,unsigned char bg,unsigned char alpha);
//unsigned char MixColorAdditive (unsigned char fg,unsigned char bg,unsigned char alpha);
- unsigned char MixColorAlpha(unsigned char fg, unsigned char bg, unsigned char alpha, int use_objpal = 0) {
+ static unsigned char MixColorAlpha(unsigned char fg, unsigned char bg, unsigned char alpha, int use_objpal = 0) {
unsigned char rfg = cycle_remap[fg]; //Automatic remapping of palette slots.
//unsigned char rbg = cycle_remap [bg]; //Saves on typing elsewhere.
AGSColor *palette = engine->GetPalette();
@@ -88,7 +88,7 @@ public:
//engine->ReleaseBitmapSurface (clutspr);
}
- unsigned char MixColorLightLevel(unsigned char fg, unsigned char intensity) {
+ static unsigned char MixColorLightLevel(unsigned char fg, unsigned char intensity) {
unsigned char rfg = cycle_remap [fg]; //Automatic remapping of palette slots.
int i = 0;
//int dark_r = (((palette[fg].r>>1) * (intensity))>>8);
@@ -102,7 +102,7 @@ public:
return cycle_remap [*(clutp + i)]; //Once again, to make sure that the palette slot used is the right one.
}
- unsigned char MixColorAdditive(unsigned char fg, unsigned char bg, unsigned char alpha, int use_objpal = 0) {
+ static unsigned char MixColorAdditive(unsigned char fg, unsigned char bg, unsigned char alpha, int use_objpal = 0) {
unsigned char rfg = cycle_remap[fg]; //Automatic remapping of palette slots.
//unsigned char rbg = cycle_remap[bg]; //Saves on typing elsewhere.
//BITMAP *clutspr = engine->GetSpriteGraphic (clutslot);
@@ -143,7 +143,7 @@ public:
return result;
}
- unsigned char MixColorMultiply(unsigned char fg, unsigned char bg, unsigned char alpha, int use_objpal = 0) {
+ static unsigned char MixColorMultiply(unsigned char fg, unsigned char bg, unsigned char alpha, int use_objpal = 0) {
unsigned char rfg = cycle_remap [fg]; //Automatic remapping of palette slots.
unsigned char rbg = cycle_remap [bg]; //Saves on typing elsewhere.
AGSColor *palette = engine->GetPalette();
@@ -173,7 +173,6 @@ public:
//engine->ReleaseBitmapSurface (clutspr);
return result;
}
-
};
void GetColor565(ScriptMethodParams ¶ms);
diff --git a/engines/ags/plugins/ags_pal_render/raycast.cpp b/engines/ags/plugins/ags_pal_render/raycast.cpp
index aa7438a1a5..f319654d7e 100644
--- a/engines/ags/plugins/ags_pal_render/raycast.cpp
+++ b/engines/ags/plugins/ags_pal_render/raycast.cpp
@@ -22,7 +22,7 @@
#include "ags/lib/allegro.h"
#include "ags/plugins/ags_pal_render/raycast.h"
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_pal_render/ags_pal_render.h"
namespace AGS3 {
namespace Plugins {
@@ -80,7 +80,7 @@ int selectedX;
int selectedY;
unsigned char selectedColor;
-void Ray_SelectTile(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SelectTile(ScriptMethodParams ¶ms) {
PARAMS3(int, x, int, y, unsigned char, color);
if (x < 0 || x >= MAP_WIDTH) selectedX = -1;
else if (y < 0 || y >= MAP_HEIGHT) selectedY = -1;
@@ -91,23 +91,23 @@ void Ray_SelectTile(ScriptMethodParams ¶ms) {
}
}
-void Ray_HasSeenTile(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_HasSeenTile(ScriptMethodParams ¶ms) {
PARAMS2(int, x, int, y);
if (x < 0 || x >= MAP_WIDTH) params._result = -1;
else if (y < 0 || y >= MAP_HEIGHT) params._result = -1;
else params._result = seenMap [x][y];
}
-void Ray_SetNoClip(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetNoClip(ScriptMethodParams ¶ms) {
PARAMS1(int, value);
noclip = value;
}
-void Ray_GetNoClip(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetNoClip(ScriptMethodParams ¶ms) {
params._result = noclip;
}
-void Ray_DrawTile(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_DrawTile(ScriptMethodParams ¶ms) {
PARAMS2(int, spr, int, tile);
BITMAP *img = engine->GetSpriteGraphic(spr);
uint8 *sprarray = engine->GetRawBitmapSurface(img);
@@ -118,7 +118,7 @@ void Ray_DrawTile(ScriptMethodParams ¶ms) {
engine->ReleaseBitmapSurface(img);
}
-void Ray_DrawOntoTile(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_DrawOntoTile(ScriptMethodParams ¶ms) {
PARAMS2(int, spr, int, tile);
BITMAP *img = engine->GetSpriteGraphic(spr);
uint8 *sprarray = engine->GetRawBitmapSurface(img);
@@ -129,48 +129,48 @@ void Ray_DrawOntoTile(ScriptMethodParams ¶ms) {
engine->ReleaseBitmapSurface(img);
}
-void Ray_GetTileX_At(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetTileX_At(ScriptMethodParams ¶ms) {
PARAMS2(int, x, int, y);
if (x < 0 || x >= S_WIDTH || y < 0 || y >= S_HEIGHT) params._result = -1;
else params._result = editorMap [x][y] >> 16;
}
-void Ray_GetTileY_At(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetTileY_At(ScriptMethodParams ¶ms) {
PARAMS2(int, x, int, y);
if (x < 0 || x >= S_WIDTH || y < 0 || y >= S_HEIGHT) params._result = -1;
else params._result = editorMap [x][y] & 0x0000FFFF;
}
-void Ray_SetWallAt(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetWallAt(ScriptMethodParams ¶ms) {
PARAMS3(int, x, int, y, int, id);
if (x < 0 || x >= MAP_WIDTH) return;
if (y < 0 || y >= MAP_HEIGHT) return;
worldMap [x][y] = id;
}
-void Ray_GetWallAt(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetWallAt(ScriptMethodParams ¶ms) {
PARAMS2(int, x, int, y);
if (x < 0 || x >= MAP_WIDTH) params._result = -1;
else if (y < 0 || y >= MAP_HEIGHT) params._result = -1;
else params._result = worldMap [x][y];
}
-void Ray_GetAmbientWeight(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetAmbientWeight(ScriptMethodParams ¶ms) {
params._result = ambientweight;
}
-void Ray_SetAmbientLight(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetAmbientLight(ScriptMethodParams ¶ms) {
PARAMS1(int, value);
ambientlight = MIN(255, MAX(0, value));
}
-void Ray_SetAmbientColor(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetAmbientColor(ScriptMethodParams ¶ms) {
PARAMS2(int, color, int, amount);
ambientcolor = color;
ambientcolorAmount = amount;
}
-void Ray_GetAmbientLight(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetAmbientLight(ScriptMethodParams ¶ms) {
params._result = ambientlight;
}
double fsqrt(double y) {
@@ -189,12 +189,12 @@ double fsqrt(double y) {
return x * y;
}
-void Ray_SetWallHotspot(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetWallHotspot(ScriptMethodParams ¶ms) {
PARAMS2(int, id, char, hotsp);
wallData[id].hotspotinteract = hotsp;
}
-void Ray_SetWallTextures(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetWallTextures(ScriptMethodParams ¶ms) {
PARAMS5(int, id, int, n, int, s, int, w, int, e);
wallData[id].texture[0] = n;
wallData[id].texture[1] = s;
@@ -202,7 +202,7 @@ void Ray_SetWallTextures(ScriptMethodParams ¶ms) {
wallData[id].texture[3] = e;
}
-void Ray_SetWallSolid(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetWallSolid(ScriptMethodParams ¶ms) {
PARAMS5(int, id, int, n, int, s, int, w, int, e);
wallData[id].solid [0] = MAX(0, MIN(n, 1));
wallData[id].solid [1] = MAX(0, MIN(s, 1));
@@ -210,7 +210,7 @@ void Ray_SetWallSolid(ScriptMethodParams ¶ms) {
wallData[id].solid [3] = MAX(0, MIN(e, 1));
}
-void Ray_SetWallIgnoreLighting(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetWallIgnoreLighting(ScriptMethodParams ¶ms) {
PARAMS5(int, id, int, n, int, s, int, w, int, e);
wallData[id].ignorelighting [0] = MAX(0, MIN(n, 1));
wallData[id].ignorelighting [1] = MAX(0, MIN(s, 1));
@@ -218,7 +218,7 @@ void Ray_SetWallIgnoreLighting(ScriptMethodParams ¶ms) {
wallData[id].ignorelighting [3] = MAX(0, MIN(e, 1));
}
-void Ray_SetWallAlpha(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetWallAlpha(ScriptMethodParams ¶ms) {
PARAMS5(int, id, int, n, int, s, int, w, int, e);
wallData[id].alpha [0] = MAX(0, MIN(n, 255));
wallData[id].alpha [1] = MAX(0, MIN(s, 255));
@@ -226,7 +226,7 @@ void Ray_SetWallAlpha(ScriptMethodParams ¶ms) {
wallData[id].alpha [3] = MAX(0, MIN(e, 255));
}
-void Ray_SetWallBlendType(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetWallBlendType(ScriptMethodParams ¶ms) {
PARAMS5(int, id, int, n, int, s, int, w, int, e);
wallData[id].blendtype [0] = MAX(0, MIN(n, 10));
wallData[id].blendtype [1] = MAX(0, MIN(s, 10));
@@ -237,86 +237,83 @@ void Ray_SetWallBlendType(ScriptMethodParams ¶ms) {
-void Ray_GetWallHotspot(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetWallHotspot(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
params._result = wallData[id].hotspotinteract;
}
-void Ray_GetWallTexture(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetWallTexture(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, dir);
params._result = wallData[id].texture[dir];
}
-void Ray_GetWallSolid(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetWallSolid(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, dir);
params._result = wallData[id].solid [dir];
}
-void Ray_GetWallIgnoreLighting(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetWallIgnoreLighting(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, dir);
params._result = wallData[id].ignorelighting [dir];
}
-void Ray_GetWallAlpha(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetWallAlpha(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, dir);
params._result = wallData[id].alpha [dir];
}
-void Ray_GetWallBlendType(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetWallBlendType(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, dir);
params._result = wallData[id].blendtype [dir];
}
-
-
-
-void Ray_GetMoveSpeed(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetMoveSpeed(ScriptMethodParams ¶ms) {
float mSpeed = (float)moveSpeed;
params._result = PARAM_FROM_FLOAT(mSpeed);
}
-void Ray_SetMoveSpeed(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetMoveSpeed(ScriptMethodParams ¶ms) {
PARAMS1(int32, speedi);
float speed = PARAM_TO_FLOAT(speedi);
moveSpeed = (double)speed;
}
-void Ray_GetRotSpeed(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetRotSpeed(ScriptMethodParams ¶ms) {
float rSpeed = (float)rotSpeed;
params._result = PARAM_FROM_FLOAT(rSpeed);
}
-void Ray_SetRotSpeed(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetRotSpeed(ScriptMethodParams ¶ms) {
PARAMS1(int32, speedi);
float speed = PARAM_TO_FLOAT(speedi);
rotSpeed = (double)speed;
}
-void Ray_GetLightAt(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetLightAt(ScriptMethodParams ¶ms) {
PARAMS2(int, x, int, y);
params._result = lightMap [x][y];
}
-void Ray_SetLightAt(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetLightAt(ScriptMethodParams ¶ms) {
PARAMS3(int, x, int, y, int, light);
lightMap [x][y] = light;
}
-void Ray_SetPlaneY(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetPlaneY(ScriptMethodParams ¶ms) {
PARAMS1(int32, yi);
float y = PARAM_TO_FLOAT(yi);
planeY = (double)y;
}
-void Ray_GetPlaneY(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetPlaneY(ScriptMethodParams ¶ms) {
float pY = (float)planeY;
params._result = PARAM_FROM_FLOAT(pY);
}
-void Ray_SetPlayerPosition(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetPlayerPosition(ScriptMethodParams ¶ms) {
PARAMS2(int32, xi, int32, yi);
float x = PARAM_TO_FLOAT(xi);
float y = PARAM_TO_FLOAT(yi);
@@ -324,24 +321,24 @@ void Ray_SetPlayerPosition(ScriptMethodParams ¶ms) {
posY = (double)y;
}
-void Ray_GetPlayerX(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetPlayerX(ScriptMethodParams ¶ms) {
float x = (float)posX;
params._result = PARAM_FROM_FLOAT(x);
}
-void Ray_GetPlayerY(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetPlayerY(ScriptMethodParams ¶ms) {
float y = (float)posY;
params._result = PARAM_FROM_FLOAT(y);
}
-void Ray_GetPlayerAngle(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetPlayerAngle(ScriptMethodParams ¶ms) {
double bgrad = atan2(dirY, dirX);
int bgdeg = (int)(bgrad / PI * 180.0) + 180;
params._result = bgdeg % 360;
}
-void Ray_SetPlayerAngle(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetPlayerAngle(ScriptMethodParams ¶ms) {
PARAMS1(int, angle);
int realangle = angle % 360;
if (realangle < 0) realangle += 360;
@@ -377,7 +374,7 @@ void LoadHeightMap(int heightmapSlot) {
heightmapOn = true;
}
-void LoadMap(ScriptMethodParams ¶ms) {
+void AGSPalRender::LoadMap(ScriptMethodParams ¶ms) {
PARAMS4(int, worldmapSlot, int, lightmapSlot, int, ceilingmapSlot, int, floormapSlot);
int tempw = engine->GetSpriteWidth(worldmapSlot);
int temph = engine->GetSpriteHeight(worldmapSlot);
@@ -435,104 +432,103 @@ void LoadMap(ScriptMethodParams ¶ms) {
//LoadHeightMap (31); //debug only
}
-void Ray_GetSpriteScaleX(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetSpriteScaleX(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
float scale = (float)sprite[id].uDivW;
params._result = PARAM_FROM_FLOAT(scale);
}
-void Ray_SetSpriteScaleX(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetSpriteScaleX(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int32, scalei);
float scale = PARAM_TO_FLOAT(scalei);
sprite[id].uDivW = scale;
}
-void Ray_GetSpriteScaleY(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetSpriteScaleY(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
float scale = (float)sprite[id].uDivH;
params._result = PARAM_FROM_FLOAT(scale);
}
-void Ray_SetSpriteScaleY(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetSpriteScaleY(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int32, scalei);
float scale = PARAM_TO_FLOAT(scalei);
sprite[id].uDivH = scale;
}
-void Ray_GetSpriteAlpha(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetSpriteAlpha(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
params._result = sprite[id].alpha;
}
-void Ray_SetSpriteAlpha(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetSpriteAlpha(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, alpha);
sprite[id].alpha = alpha;
}
-void Ray_GetSpritePic(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetSpritePic(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
params._result = sprite[id].texture;
}
-void Ray_SetSpritePic(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetSpritePic(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, slot);
sprite[id].texture = slot;
}
-
-void Ray_GetSpriteAngle(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetSpriteAngle(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
params._result = sprite[id].angle;
}
-void Ray_SetSpriteAngle(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetSpriteAngle(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, angle);
sprite[id].angle = angle % 360;
}
-void Ray_GetSpriteInteractObj(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetSpriteInteractObj(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
params._result = sprite[id].objectinteract;
}
-void Ray_SetSpriteView(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetSpriteView(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, view);
sprite[id].view = view;
}
-void Ray_SetSpriteBlendType(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetSpriteBlendType(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, type);
sprite[id].blendmode = type;
}
-void Ray_GetSpriteBlendType(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetSpriteBlendType(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
params._result = sprite[id].blendmode;
}
-void Ray_GetSpriteView(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetSpriteView(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
params._result = sprite[id].view;
}
-void Ray_SetSpriteFrame(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetSpriteFrame(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, frame);
sprite[id].frame = frame;
}
-void Ray_GetSpriteFrame(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetSpriteFrame(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
params._result = sprite[id].frame;
}
-void Ray_SetSpriteInteractObj(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetSpriteInteractObj(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int, obj);
sprite[id].objectinteract = obj;
}
-void Ray_SetSpritePosition(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetSpritePosition(ScriptMethodParams ¶ms) {
PARAMS3(int, id, int32, xi, int32, yi);
float x = PARAM_TO_FLOAT(xi);
float y = PARAM_TO_FLOAT(yi);
@@ -540,32 +536,32 @@ void Ray_SetSpritePosition(ScriptMethodParams ¶ms) {
sprite[id].y = y;
}
-void Ray_SetSpriteVertOffset(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetSpriteVertOffset(ScriptMethodParams ¶ms) {
PARAMS2(int, id, int32, vMovei);
float vMove = PARAM_TO_FLOAT(vMovei);
sprite[id].vMove = vMove;
}
-void Ray_GetSpriteVertOffset(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetSpriteVertOffset(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
float x = (float)sprite[id].vMove;
params._result = PARAM_FROM_FLOAT(x);
}
-void Ray_GetSpriteX(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetSpriteX(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
float x = (float)sprite[id].x;
params._result = PARAM_FROM_FLOAT(x);
}
-void Ray_GetSpriteY(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetSpriteY(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
float y = (float)sprite[id].y;
params._result = PARAM_FROM_FLOAT(y);
}
-void Ray_InitSprite(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_InitSprite(ScriptMethodParams ¶ms) {
PARAMS9(int, id, int32, xi, int32, yi, int, slot, unsigned char, alpha, int, blendmode, int32, scale_xi, int32, scale_yi, int32, vMovei);
float x = PARAM_TO_FLOAT(xi);
float y = PARAM_TO_FLOAT(yi);
@@ -586,7 +582,7 @@ void Ray_InitSprite(ScriptMethodParams ¶ms) {
//function used to sort the sprites
void combSort(int *order, double *dist, int amount);
-void MakeTextures(ScriptMethodParams ¶ms) {
+void AGSPalRender::MakeTextures(ScriptMethodParams ¶ms) {
PARAMS1(int, slot);
textureSlot = slot;
int sourceWidth = engine->GetSpriteWidth(slot);
@@ -635,33 +631,33 @@ void MakeTextures(ScriptMethodParams ¶ms) {
//double ZBuffer[screenWidth][screenHeight];
-void Ray_SetFloorAt(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetFloorAt(ScriptMethodParams ¶ms) {
PARAMS3(int, x, int, y, int, tex);
if (x < 0 || x > MAP_WIDTH || y < 0 || y > MAP_HEIGHT || tex > 511) return;
else floorMap[x][y] = tex;
}
-void Ray_SetCeilingAt(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetCeilingAt(ScriptMethodParams ¶ms) {
PARAMS3(int, x, int, y, int, tex);
if (x < 0 || x > MAP_WIDTH || y < 0 || y > MAP_HEIGHT || tex > 511) return;
else ceilingMap[x][y] = tex;
}
-void Ray_GetCeilingAt(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetCeilingAt(ScriptMethodParams ¶ms) {
PARAMS2(int, x, int, y);
if (x < 0 || x > MAP_WIDTH || y < 0 || y > MAP_HEIGHT) params._result = -1;
else params._result = ceilingMap [x][y];
}
-void Ray_GetFloorAt(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetFloorAt(ScriptMethodParams ¶ms) {
PARAMS2(int, x, int, y);
if (x < 0 || x > MAP_WIDTH || y < 0 || y > MAP_HEIGHT) params._result = -1;
else params._result = floorMap [x][y];
}
-void Ray_GetLightingAt(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetLightingAt(ScriptMethodParams ¶ms) {
PARAMS2(int, x, int, y);
if (x < 0 || x > MAP_WIDTH || y < 0 || y > MAP_HEIGHT) params._result = -1;
else {
@@ -674,7 +670,7 @@ void Ray_GetLightingAt(ScriptMethodParams ¶ms) {
}
}
-void Ray_SetLightingAt(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetLightingAt(ScriptMethodParams ¶ms) {
PARAMS3(int, x, int, y, unsigned char, lighting);
if (x < 0 || x > MAP_WIDTH || y < 0 || y > MAP_HEIGHT) return;
else {
@@ -682,7 +678,7 @@ void Ray_SetLightingAt(ScriptMethodParams ¶ms) {
}
}
-void Ray_SetSkyBox(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_SetSkyBox(ScriptMethodParams ¶ms) {
PARAMS1(int, slot);
BITMAP *test = engine->GetSpriteGraphic(slot);
if (test) {
@@ -690,26 +686,26 @@ void Ray_SetSkyBox(ScriptMethodParams ¶ms) {
} else engine->AbortGame("Ray_SetSkybox: No such sprite!");
}
-void Ray_GetSkyBox(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetSkyBox(ScriptMethodParams ¶ms) {
//PARAMS1(int, slot);
params._result = skybox;
}
-void Ray_GetHotspotAt(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetHotspotAt(ScriptMethodParams ¶ms) {
PARAMS2(int, x, int, y);
if (!interactionmap) params._result = -1;
else if (x > S_WIDTH || x < 0 || y > S_HEIGHT || y < 0) params._result = -1;
else params._result = interactionmap [x * S_WIDTH + y] & 0x00FF;
}
-void Ray_GetObjectAt(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetObjectAt(ScriptMethodParams ¶ms) {
PARAMS2(int, x, int, y);
if (!interactionmap) params._result = -1;
else if (x > S_WIDTH || x < 0 || y > S_HEIGHT || y < 0) params._result = -1;
else params._result = interactionmap [x * S_WIDTH + y] >> 8;
}
-void Ray_GetDistanceAt(ScriptMethodParams ¶ms) {
+void AGSPalRender::Ray_GetDistanceAt(ScriptMethodParams ¶ms) {
PARAMS2(int, x, int, y);
float falsereturn = -1.0f;
if (!ZBuffer) {
@@ -723,7 +719,7 @@ void Ray_GetDistanceAt(ScriptMethodParams ¶ms) {
}
}
-void Init_Raycaster(ScriptMethodParams &) {
+void AGSPalRender::Init_Raycaster(ScriptMethodParams &) {
if (ZBuffer)
return;
//if (!worldMap) return;
@@ -748,7 +744,7 @@ void Init_Raycaster(ScriptMethodParams &) {
}
bool rendering;
-void Raycast_Render(ScriptMethodParams ¶ms) {
+void AGSPalRender::Raycast_Render(ScriptMethodParams ¶ms) {
PARAMS1(int, slot);
ambientweight = 0;
raycastOn = true;
@@ -1387,7 +1383,7 @@ void Raycast_Render(ScriptMethodParams ¶ms) {
}
-void QuitCleanup(ScriptMethodParams &) {
+void AGSPalRender::QuitCleanup(ScriptMethodParams &) {
if (!rendering) {
for (int i = 0; i < S_WIDTH; ++i) {
if (transcolorbuffer[i])delete [] transcolorbuffer[i];
@@ -1404,7 +1400,7 @@ void QuitCleanup(ScriptMethodParams &) {
}
}
-void MoveForward(ScriptMethodParams &) {
+void AGSPalRender::MoveForward(ScriptMethodParams &) {
double newposx = 0;
if (dirX > 0) newposx = 0.1 + posX + dirX * moveSpeed;
else newposx = -0.1 + posX + dirX * moveSpeed;
@@ -1459,7 +1455,7 @@ void MoveForward(ScriptMethodParams &) {
}
}
-void MoveBackward(ScriptMethodParams &) {
+void AGSPalRender::MoveBackward(ScriptMethodParams &) {
double newposx = 0;
if (dirX > 0) newposx = -0.1 + posX - dirX * moveSpeed;
else newposx = 0.1 + posX - dirX * moveSpeed;
@@ -1531,7 +1527,7 @@ void MoveBackward ()
}
*/
-void RotateLeft(ScriptMethodParams &) {
+void AGSPalRender::RotateLeft(ScriptMethodParams &) {
double oldDirX = dirX;
dirX = dirX * cos(rotSpeed) - dirY * sin(rotSpeed);
dirY = oldDirX * sin(rotSpeed) + dirY * cos(rotSpeed);
@@ -1540,7 +1536,7 @@ void RotateLeft(ScriptMethodParams &) {
planeY = oldPlaneX * sin(rotSpeed) + planeY * cos(rotSpeed);
}
-void RotateRight(ScriptMethodParams &) {
+void AGSPalRender::RotateRight(ScriptMethodParams &) {
double oldDirX = dirX;
dirX = dirX * cos(-rotSpeed) - dirY * sin(-rotSpeed);
dirY = oldDirX * sin(-rotSpeed) + dirY * cos(-rotSpeed);
diff --git a/engines/ags/plugins/ags_pal_render/raycast.h b/engines/ags/plugins/ags_pal_render/raycast.h
index 4e5faa3a4d..d495d69604 100644
--- a/engines/ags/plugins/ags_pal_render/raycast.h
+++ b/engines/ags/plugins/ags_pal_render/raycast.h
@@ -102,106 +102,6 @@ extern double *distTable;
extern short *interactionmap;
extern int skybox;
-
-
-void MakeTextures(ScriptMethodParams ¶ms);
-void Raycast_Render(ScriptMethodParams ¶ms);
-void MoveForward(ScriptMethodParams ¶ms);
-void MoveBackward(ScriptMethodParams ¶ms);
-void RotateLeft(ScriptMethodParams ¶ms);
-void RotateRight(ScriptMethodParams ¶ms);
-void Init_Raycaster(ScriptMethodParams ¶ms);
-void QuitCleanup(ScriptMethodParams ¶ms);
-void LoadMap(ScriptMethodParams ¶ms);
-void Ray_InitSprite(ScriptMethodParams ¶ms);
-void Ray_SetPlayerPosition(ScriptMethodParams ¶ms);
-void Ray_GetPlayerX(ScriptMethodParams ¶ms);
-void Ray_GetPlayerY(ScriptMethodParams ¶ms);
-void Ray_GetPlayerAngle(ScriptMethodParams ¶ms);
-void Ray_SetPlayerAngle(ScriptMethodParams ¶ms);
-
-void Ray_GetWallHotspot(ScriptMethodParams ¶ms);
-void Ray_GetWallTexture(ScriptMethodParams ¶ms);
-void Ray_GetWallSolid(ScriptMethodParams ¶ms);
-void Ray_GetWallIgnoreLighting(ScriptMethodParams ¶ms);
-void Ray_GetWallAlpha(ScriptMethodParams ¶ms);
-void Ray_GetWallBlendType(ScriptMethodParams ¶ms);
-
-void Ray_SelectTile(ScriptMethodParams ¶ms);
-
-void Ray_GetHotspotAt(ScriptMethodParams ¶ms);
-void Ray_GetObjectAt(ScriptMethodParams ¶ms);
-
-void Ray_DrawTile(ScriptMethodParams ¶ms);
-void Ray_DrawOntoTile(ScriptMethodParams ¶ms);
-void Ray_SetNoClip(ScriptMethodParams ¶ms);
-void Ray_GetNoClip(ScriptMethodParams ¶ms);
-void Ray_SetSpriteInteractObj(ScriptMethodParams ¶ms);
-void Ray_GetSpriteInteractObj(ScriptMethodParams ¶ms);
-void Ray_SetSpritePosition(ScriptMethodParams ¶ms);
-void Ray_SetSpriteVertOffset(ScriptMethodParams ¶ms);
-void Ray_GetSpriteVertOffset(ScriptMethodParams ¶ms);
-void Ray_GetSpriteX(ScriptMethodParams ¶ms);
-void Ray_GetSpriteY(ScriptMethodParams ¶ms);
-
-void Ray_SetWallHotspot(ScriptMethodParams ¶ms);
-void Ray_SetWallTextures(ScriptMethodParams ¶ms);
-void Ray_SetWallSolid(ScriptMethodParams ¶ms);
-void Ray_SetWallIgnoreLighting(ScriptMethodParams ¶ms);
-void Ray_SetWallAlpha(ScriptMethodParams ¶ms);
-void Ray_SetWallBlendType(ScriptMethodParams ¶ms);
-
-void Ray_GetMoveSpeed(ScriptMethodParams ¶ms);
-void Ray_SetMoveSpeed(ScriptMethodParams ¶ms);
-void Ray_GetRotSpeed(ScriptMethodParams ¶ms);
-void Ray_SetRotSpeed(ScriptMethodParams ¶ms);
-void Ray_GetWallAt(ScriptMethodParams ¶ms);
-void Ray_GetLightAt(ScriptMethodParams ¶ms);
-void Ray_SetLightAt(ScriptMethodParams ¶ms);
-void Ray_SetWallAt(ScriptMethodParams ¶ms);
-void Ray_SetPlaneY(ScriptMethodParams ¶ms);
-void Ray_GetDistanceAt(ScriptMethodParams ¶ms);
-void Ray_GetSpriteAngle(ScriptMethodParams ¶ms);
-void Ray_SetSpriteAngle(ScriptMethodParams ¶ms);
-void Ray_SetSpriteView(ScriptMethodParams ¶ms);
-void Ray_GetSpriteView(ScriptMethodParams ¶ms);
-void Ray_SetSpriteFrame(ScriptMethodParams ¶ms);
-void Ray_GetSpriteFrame(ScriptMethodParams ¶ms);
-
-void Ray_GetTileX_At(ScriptMethodParams ¶ms);
-void Ray_GetTileY_At(ScriptMethodParams ¶ms);
-
-void Ray_SetSkyBox(ScriptMethodParams ¶ms);
-void Ray_GetSkyBox(ScriptMethodParams ¶ms);
-
-void Ray_SetAmbientLight(ScriptMethodParams ¶ms);
-void Ray_GetAmbientLight(ScriptMethodParams ¶ms);
-void Ray_SetAmbientColor(ScriptMethodParams ¶ms);
-
-
-void Ray_GetSpriteAlpha(ScriptMethodParams ¶ms);
-void Ray_SetSpriteAlpha(ScriptMethodParams ¶ms);
-void Ray_GetSpritePic(ScriptMethodParams ¶ms);
-void Ray_SetSpritePic(ScriptMethodParams ¶ms);
-
-void Ray_GetSpriteScaleX(ScriptMethodParams ¶ms);
-void Ray_SetSpriteScaleX(ScriptMethodParams ¶ms);
-void Ray_GetSpriteScaleY(ScriptMethodParams ¶ms);
-void Ray_SetSpriteScaleY(ScriptMethodParams ¶ms);
-
-void Ray_SetSpriteBlendType(ScriptMethodParams ¶ms);
-void Ray_GetSpriteBlendType(ScriptMethodParams ¶ms);
-
-void Ray_SetFloorAt(ScriptMethodParams ¶ms);
-void Ray_SetCeilingAt(ScriptMethodParams ¶ms);
-void Ray_GetCeilingAt(ScriptMethodParams ¶ms);
-void Ray_GetFloorAt(ScriptMethodParams ¶ms);
-void Ray_GetLightingAt(ScriptMethodParams ¶ms);
-void Ray_SetLightingAt(ScriptMethodParams ¶ms);
-void Ray_GetAmbientWeight(ScriptMethodParams ¶ms);
-
-void Ray_HasSeenTile(ScriptMethodParams ¶ms);
-
} // namespace AGSPalRender
} // namespace Plugins
} // namespace AGS3
diff --git a/engines/ags/plugins/ags_parallax/ags_parallax.cpp b/engines/ags/plugins/ags_parallax/ags_parallax.cpp
index c1664b3fb0..36b267f1b3 100644
--- a/engines/ags/plugins/ags_parallax/ags_parallax.cpp
+++ b/engines/ags/plugins/ags_parallax/ags_parallax.cpp
@@ -32,38 +32,18 @@ const unsigned int Magic = 0xCAFE0000;
const unsigned int Version = 2;
const unsigned int SaveMagic = Magic + Version;
-IAGSEngine *AGSParallax::_engine;
-int32 AGSParallax::_screenWidth;
-int32 AGSParallax::_screenHeight;
-int32 AGSParallax::_screenColorDepth;
-bool AGSParallax::_enabled;
-Sprite AGSParallax::_sprites[MAX_SPRITES];
-
-
-AGSParallax::AGSParallax() : PluginBase() {
- _engine = nullptr;
- _screenWidth = 320;
- _screenHeight = 200;
- _screenColorDepth = 32;
- _enabled = false;
-
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
- DLL_METHOD(AGS_EngineOnEvent);
-}
-
const char *AGSParallax::AGS_GetPluginName() {
return "Parallax plugin recreation";
}
void AGSParallax::AGS_EngineStartup(IAGSEngine *engine) {
- _engine = engine;
+ PluginBase::AGS_EngineStartup(engine);
if (_engine->version < 13)
_engine->AbortGame("Engine interface is too old, need newer version of AGS.");
- SCRIPT_METHOD(pxDrawSprite);
- SCRIPT_METHOD(pxDeleteSprite);
+ SCRIPT_METHOD(pxDrawSprite, AGSParallax::pxDrawSprite);
+ SCRIPT_METHOD(pxDeleteSprite, AGSParallax::pxDeleteSprite);
_engine->RequestEventHook(AGSE_PREGUIDRAW);
_engine->RequestEventHook(AGSE_PRESCREENDRAW);
diff --git a/engines/ags/plugins/ags_parallax/ags_parallax.h b/engines/ags/plugins/ags_parallax/ags_parallax.h
index 14416a0fa5..6d6e02c6d7 100644
--- a/engines/ags/plugins/ags_parallax/ags_parallax.h
+++ b/engines/ags/plugins/ags_parallax/ags_parallax.h
@@ -31,12 +31,12 @@ namespace Plugins {
namespace AGSParallax {
struct Sprite {
-int32 x = 0;
-int32 y = 0;
-int slot = -1;
-int speed = 0;
+ int32 x = 0;
+ int32 y = 0;
+ int slot = -1;
+ int speed = 0;
-void syncGame(Serializer &s);
+ void syncGame(Serializer &s);
};
#define MAX_SPEED 1000
@@ -47,29 +47,30 @@ void syncGame(Serializer &s);
* but a workalike plugin created for the AGS engine ports.
*/
class AGSParallax : public PluginBase {
+ SCRIPT_HASH(AGSParallax)
private:
-IAGSEngine *_engine;
-int32 _screenWidth;
-int32 _screenHeight;
-int32 _screenColorDepth;
+ int32 _screenWidth = 320;
+ int32 _screenHeight = 200;
+ int32 _screenColorDepth = 32;
-bool _enabled;
-Sprite _sprites[MAX_SPRITES];
-private:
-const char *AGS_GetPluginName();
-void AGS_EngineStartup(IAGSEngine *lpEngine);
-int64 AGS_EngineOnEvent(int event, NumberPtr data);
-
-void pxDrawSprite(ScriptMethodParams ¶ms);
-void pxDeleteSprite(ScriptMethodParams ¶ms);
+ bool _enabled = false;
+ Sprite _sprites[MAX_SPRITES];
private:
-void syncGame(Serializer &s);
-void Draw(bool foreground);
-void clear();
+ void pxDrawSprite(ScriptMethodParams ¶ms);
+ void pxDeleteSprite(ScriptMethodParams ¶ms);
+
+ void syncGame(Serializer &s);
+ void Draw(bool foreground);
+ void clear();
public:
-AGSParallax();
+ AGSParallax() : PluginBase() {}
+ virtual ~AGSParallax() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *lpEngine) override;
+ int64 AGS_EngineOnEvent(int event, NumberPtr data) override;
};
} // namespace AGSParallax
diff --git a/engines/ags/plugins/ags_shell/ags_shell.cpp b/engines/ags/plugins/ags_shell/ags_shell.cpp
index 910e5013fb..74a21da4f5 100644
--- a/engines/ags/plugins/ags_shell/ags_shell.cpp
+++ b/engines/ags/plugins/ags_shell/ags_shell.cpp
@@ -27,25 +27,18 @@ namespace AGS3 {
namespace Plugins {
namespace AGSShell {
-IAGSEngine *AGSShell::_engine;
-
-AGSShell::AGSShell() : PluginBase() {
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
-}
-
const char *AGSShell::AGS_GetPluginName() {
return "AGS shell plugin";
}
void AGSShell::AGS_EngineStartup(IAGSEngine *engine) {
- _engine = engine;
+ PluginBase::AGS_EngineStartup(engine);
// Make sure it's got the version with the features we need
if (_engine->version < 3)
_engine->AbortGame("Plugin needs engine version 3 or newer.");
- SCRIPT_METHOD(ShellExecute);
+ SCRIPT_METHOD(ShellExecute, AGSShell::ShellExecute);
}
void AGSShell::ShellExecute(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/ags_shell/ags_shell.h b/engines/ags/plugins/ags_shell/ags_shell.h
index bf00399d81..d484ce64c1 100644
--- a/engines/ags/plugins/ags_shell/ags_shell.h
+++ b/engines/ags/plugins/ags_shell/ags_shell.h
@@ -23,24 +23,23 @@
#ifndef AGS_PLUGINS_AGS_SHELL_H
#define AGS_PLUGINS_AGS_SHELL_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace AGSShell {
class AGSShell : public PluginBase {
+ SCRIPT_HASH(AGSShell)
private:
-IAGSEngine *_engine;
-private:
-const char *AGS_GetPluginName();
-void AGS_EngineStartup(IAGSEngine *lpEngine);
-
-private:
-void ShellExecute(ScriptMethodParams ¶ms);
+ void ShellExecute(ScriptMethodParams ¶ms);
public:
-AGSShell();
+ AGSShell() : PluginBase() {}
+ virtual ~AGSShell() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *lpEngine) override;
};
} // namespace AGSShell
diff --git a/engines/ags/plugins/ags_snow_rain/ags_snow_rain.cpp b/engines/ags/plugins/ags_snow_rain/ags_snow_rain.cpp
index 774800b875..cd29fa368f 100644
--- a/engines/ags/plugins/ags_snow_rain/ags_snow_rain.cpp
+++ b/engines/ags/plugins/ags_snow_rain/ags_snow_rain.cpp
@@ -26,24 +26,9 @@ namespace AGS3 {
namespace Plugins {
namespace AGSSnowRain {
-IAGSEngine *_engine;
-int32 _screenWidth;
-int32 _screenHeight;
-int32 _screenColorDepth;
-
-Weather *AGSSnowRain::_rain;
-Weather *AGSSnowRain::_snow;
-
-AGSSnowRain::AGSSnowRain() : PluginBase() {
- _engine = nullptr;
- _screenWidth = 320;
- _screenHeight = 200;
- _screenColorDepth = 32;
-
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
- DLL_METHOD(AGS_EngineShutdown);
- DLL_METHOD(AGS_EngineOnEvent);
+AGSSnowRain::AGSSnowRain() : PluginBase(),
+ _rain(false, _screenWidth, _screenHeight, _engine),
+ _snow(true, _screenWidth, _screenHeight, _engine) {
}
const char *AGSSnowRain::AGS_GetPluginName() {
@@ -52,69 +37,62 @@ const char *AGSSnowRain::AGS_GetPluginName() {
}
void AGSSnowRain::AGS_EngineStartup(IAGSEngine *engine) {
- _engine = engine;
+ PluginBase::AGS_EngineStartup(engine);
if (_engine->version < 13)
_engine->AbortGame("Engine interface is too old, need newer version of AGS.");
- SCRIPT_METHOD(srSetSnowDriftRange);
- SCRIPT_METHOD(srSetSnowDriftSpeed);
- SCRIPT_METHOD(srSetSnowFallSpeed);
- SCRIPT_METHOD(srChangeSnowAmount);
- SCRIPT_METHOD(srSetSnowBaseline);
- SCRIPT_METHOD(srSetSnowTransparency);
- SCRIPT_METHOD(srSetSnowDefaultView);
- SCRIPT_METHOD(srSetSnowWindSpeed);
- SCRIPT_METHOD(srSetSnowAmount);
- SCRIPT_METHOD(srSetSnowView);
-
- SCRIPT_METHOD(srSetRainDriftRange);
- SCRIPT_METHOD(srSetRainDriftSpeed);
- SCRIPT_METHOD(srSetRainFallSpeed);
- SCRIPT_METHOD(srChangeRainAmount);
- SCRIPT_METHOD(srSetRainBaseline);
- SCRIPT_METHOD(srSetRainTransparency);
- SCRIPT_METHOD(srSetRainDefaultView);
- SCRIPT_METHOD(srSetRainWindSpeed);
- SCRIPT_METHOD(srSetRainAmount);
- SCRIPT_METHOD(srSetRainView);
-
- SCRIPT_METHOD(srSetWindSpeed);
- SCRIPT_METHOD(srSetBaseline);
+ SCRIPT_METHOD(srSetSnowDriftRange, AGSSnowRain::srSetSnowDriftRange);
+ SCRIPT_METHOD(srSetSnowDriftSpeed, AGSSnowRain::srSetSnowDriftSpeed);
+ SCRIPT_METHOD(srSetSnowFallSpeed, AGSSnowRain::srSetSnowFallSpeed);
+ SCRIPT_METHOD(srChangeSnowAmount, AGSSnowRain::srChangeSnowAmount);
+ SCRIPT_METHOD(srSetSnowBaseline, AGSSnowRain::srSetSnowBaseline);
+ SCRIPT_METHOD(srSetSnowTransparency, AGSSnowRain::srSetSnowTransparency);
+ SCRIPT_METHOD(srSetSnowDefaultView, AGSSnowRain::srSetSnowDefaultView);
+ SCRIPT_METHOD(srSetSnowWindSpeed, AGSSnowRain::srSetSnowWindSpeed);
+ SCRIPT_METHOD(srSetSnowAmount, AGSSnowRain::srSetSnowAmount);
+ SCRIPT_METHOD(srSetSnowView, AGSSnowRain::srSetSnowView);
+
+ SCRIPT_METHOD(srSetRainDriftRange, AGSSnowRain::srSetRainDriftRange);
+ SCRIPT_METHOD(srSetRainDriftSpeed, AGSSnowRain::srSetRainDriftSpeed);
+ SCRIPT_METHOD(srSetRainFallSpeed, AGSSnowRain::srSetRainFallSpeed);
+ SCRIPT_METHOD(srChangeRainAmount, AGSSnowRain::srChangeRainAmount);
+ SCRIPT_METHOD(srSetRainBaseline, AGSSnowRain::srSetRainBaseline);
+ SCRIPT_METHOD(srSetRainTransparency, AGSSnowRain::srSetRainTransparency);
+ SCRIPT_METHOD(srSetRainDefaultView, AGSSnowRain::srSetRainDefaultView);
+ SCRIPT_METHOD(srSetRainWindSpeed, AGSSnowRain::srSetRainWindSpeed);
+ SCRIPT_METHOD(srSetRainAmount, AGSSnowRain::srSetRainAmount);
+ SCRIPT_METHOD(srSetRainView, AGSSnowRain::srSetRainView);
+
+ SCRIPT_METHOD(srSetWindSpeed, AGSSnowRain::srSetWindSpeed);
+ SCRIPT_METHOD(srSetBaseline, AGSSnowRain::srSetBaseline);
_engine->RequestEventHook(AGSE_PREGUIDRAW);
_engine->RequestEventHook(AGSE_PRESCREENDRAW);
_engine->RequestEventHook(AGSE_ENTERROOM);
_engine->RequestEventHook(AGSE_SAVEGAME);
_engine->RequestEventHook(AGSE_RESTOREGAME);
-
- _rain = new Weather();
- _snow = new Weather(true);
}
-void AGSSnowRain::AGS_EngineShutdown() {
- delete _rain;
- delete _snow;
-}
int64 AGSSnowRain::AGS_EngineOnEvent(int event, NumberPtr data) {
if (event == AGSE_PREGUIDRAW) {
- if (_rain->IsActive())
- _rain->Update();
+ if (_rain.IsActive())
+ _rain.Update();
- if (_snow->IsActive())
- _snow->UpdateWithDrift();
+ if (_snow.IsActive())
+ _snow.UpdateWithDrift();
} else if (event == AGSE_ENTERROOM) {
- _rain->EnterRoom();
- _snow->EnterRoom();
+ _rain.EnterRoom();
+ _snow.EnterRoom();
} else if (event == AGSE_RESTOREGAME) {
Serializer s(_engine, data, true);
- _rain->syncGame(s);
- _snow->syncGame(s);
+ _rain.syncGame(s);
+ _snow.syncGame(s);
} else if (event == AGSE_SAVEGAME) {
Serializer s(_engine, data, false);
- _rain->syncGame(s);
- _snow->syncGame(s);
+ _rain.syncGame(s);
+ _snow.syncGame(s);
} else if (event == AGSE_PRESCREENDRAW) {
// Get screen size once here
_engine->GetScreenDimensions(&_screenWidth, &_screenHeight , &_screenColorDepth);
@@ -127,114 +105,114 @@ int64 AGSSnowRain::AGS_EngineOnEvent(int event, NumberPtr data) {
void AGSSnowRain::srSetWindSpeed(ScriptMethodParams ¶ms) {
PARAMS1(int, value);
- _snow->SetWindSpeed(value);
- _rain->SetWindSpeed(value);
+ _snow.SetWindSpeed(value);
+ _rain.SetWindSpeed(value);
}
void AGSSnowRain::srSetBaseline(ScriptMethodParams ¶ms) {
PARAMS2(int, top, int, bottom);
- _snow->SetBaseline(top, bottom);
- _rain->SetBaseline(top, bottom);
+ _snow.SetBaseline(top, bottom);
+ _rain.SetBaseline(top, bottom);
}
void AGSSnowRain::srSetSnowDriftRange(ScriptMethodParams ¶ms) {
PARAMS2(int, min_value, int, max_value);
- _snow->SetDriftRange(min_value, max_value);
+ _snow.SetDriftRange(min_value, max_value);
}
void AGSSnowRain::srSetSnowDriftSpeed(ScriptMethodParams ¶ms) {
PARAMS2(int, min_value, int, max_value);
- _snow->SetDriftSpeed(min_value, max_value);
+ _snow.SetDriftSpeed(min_value, max_value);
}
void AGSSnowRain::srChangeSnowAmount(ScriptMethodParams ¶ms) {
PARAMS1(int, amount);
- _snow->ChangeAmount(amount);
+ _snow.ChangeAmount(amount);
}
void AGSSnowRain::srSetSnowView(ScriptMethodParams ¶ms) {
PARAMS4(int, kind_id, int, event, int, view, int, loop);
- _snow->SetView(kind_id, event, view, loop);
+ _snow.SetView(kind_id, event, view, loop);
}
void AGSSnowRain::srSetSnowDefaultView(ScriptMethodParams ¶ms) {
PARAMS2(int, view, int, loop);
- _snow->SetDefaultView(view, loop);
+ _snow.SetDefaultView(view, loop);
}
void AGSSnowRain::srSetSnowTransparency(ScriptMethodParams ¶ms) {
PARAMS2(int, min_value, int, max_value);
- _snow->SetTransparency(min_value, max_value);
+ _snow.SetTransparency(min_value, max_value);
}
void AGSSnowRain::srSetSnowWindSpeed(ScriptMethodParams ¶ms) {
PARAMS1(int, value);
- _snow->SetWindSpeed(value);
+ _snow.SetWindSpeed(value);
}
void AGSSnowRain::srSetSnowBaseline(ScriptMethodParams ¶ms) {
PARAMS2(int, top, int, bottom);
- _snow->SetBaseline(top, bottom);
+ _snow.SetBaseline(top, bottom);
}
void AGSSnowRain::srSetSnowAmount(ScriptMethodParams ¶ms) {
PARAMS1(int, amount);
- _snow->SetAmount(amount);
+ _snow.SetAmount(amount);
}
void AGSSnowRain::srSetSnowFallSpeed(ScriptMethodParams ¶ms) {
PARAMS2(int, min_value, int, max_value);
- _snow->SetFallSpeed(min_value, max_value);
+ _snow.SetFallSpeed(min_value, max_value);
}
void AGSSnowRain::srSetRainDriftRange(ScriptMethodParams ¶ms) {
PARAMS2(int, min_value, int, max_value);
- _rain->SetDriftRange(min_value, max_value);
+ _rain.SetDriftRange(min_value, max_value);
}
void AGSSnowRain::srSetRainDriftSpeed(ScriptMethodParams ¶ms) {
PARAMS2(int, min_value, int, max_value);
- _rain->SetDriftSpeed(min_value, max_value);
+ _rain.SetDriftSpeed(min_value, max_value);
}
void AGSSnowRain::srChangeRainAmount(ScriptMethodParams ¶ms) {
PARAMS1(int, amount);
- _rain->ChangeAmount(amount);
+ _rain.ChangeAmount(amount);
}
void AGSSnowRain::srSetRainView(ScriptMethodParams ¶ms) {
PARAMS4(int, kind_id, int, event, int, view, int, loop);
- _rain->SetView(kind_id, event, view, loop);
+ _rain.SetView(kind_id, event, view, loop);
}
void AGSSnowRain::srSetRainDefaultView(ScriptMethodParams ¶ms) {
PARAMS2(int, view, int, loop);
- _rain->SetDefaultView(view, loop);
+ _rain.SetDefaultView(view, loop);
}
void AGSSnowRain::srSetRainTransparency(ScriptMethodParams ¶ms) {
PARAMS2(int, min_value, int, max_value);
- _rain->SetTransparency(min_value, max_value);
+ _rain.SetTransparency(min_value, max_value);
}
void AGSSnowRain::srSetRainWindSpeed(ScriptMethodParams ¶ms) {
PARAMS1(int, value);
- _rain->SetWindSpeed(value);
+ _rain.SetWindSpeed(value);
}
void AGSSnowRain::srSetRainBaseline(ScriptMethodParams ¶ms) {
PARAMS2(int, top, int, bottom);
- _rain->SetBaseline(top, bottom);
+ _rain.SetBaseline(top, bottom);
}
void AGSSnowRain::srSetRainAmount(ScriptMethodParams ¶ms) {
PARAMS1(int, amount);
- _rain->SetAmount(amount);
+ _rain.SetAmount(amount);
}
void AGSSnowRain::srSetRainFallSpeed(ScriptMethodParams ¶ms) {
PARAMS2(int, min_value, int, max_value);
- _rain->SetFallSpeed(min_value, max_value);
+ _rain.SetFallSpeed(min_value, max_value);
}
} // namespace AGSSnowRain
diff --git a/engines/ags/plugins/ags_snow_rain/ags_snow_rain.h b/engines/ags/plugins/ags_snow_rain/ags_snow_rain.h
index af15dd3f45..705d5ac36b 100644
--- a/engines/ags/plugins/ags_snow_rain/ags_snow_rain.h
+++ b/engines/ags/plugins/ags_snow_rain/ags_snow_rain.h
@@ -23,57 +23,56 @@
#ifndef AGS_PLUGINS_AGS_SNOW_RAIN_AGS_SNOW_RAIN_H
#define AGS_PLUGINS_AGS_SNOW_RAIN_AGS_SNOW_RAIN_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
#include "ags/plugins/ags_snow_rain/weather.h"
namespace AGS3 {
namespace Plugins {
namespace AGSSnowRain {
-extern IAGSEngine *_engine;
-extern int32 _screenWidth;
-extern int32 _screenHeight;
-extern int32 _screenColorDepth;
-
/**
* This is not the original AGS SnowRain plugin, but a workalike
* plugin created for the AGS engine PSP port.
*/
class AGSSnowRain : public PluginBase {
+ SCRIPT_HASH(AGSSnowRain)
private:
-Weather *_rain;
-Weather *_snow;
-private:
-const char *AGS_GetPluginName();
-void AGS_EngineStartup(IAGSEngine *lpEngine);
-void AGS_EngineShutdown();
-int64 AGS_EngineOnEvent(int event, NumberPtr data);
+ Weather _rain;
+ Weather _snow;
+ int32 _screenWidth = 320;
+ int32 _screenHeight = 200;
+ int32 _screenColorDepth = 32;
private:
-void srSetWindSpeed(ScriptMethodParams ¶ms);
-void srSetBaseline(ScriptMethodParams ¶ms);
-void srSetSnowDriftRange(ScriptMethodParams ¶ms);
-void srSetSnowDriftSpeed(ScriptMethodParams ¶ms);
-void srChangeSnowAmount(ScriptMethodParams ¶ms);
-void srSetSnowView(ScriptMethodParams ¶ms);
-void srSetSnowDefaultView(ScriptMethodParams ¶ms);
-void srSetSnowTransparency(ScriptMethodParams ¶ms);
-void srSetSnowWindSpeed(ScriptMethodParams ¶ms);
-void srSetSnowBaseline(ScriptMethodParams ¶ms);
-void srSetSnowAmount(ScriptMethodParams ¶ms);
-void srSetSnowFallSpeed(ScriptMethodParams ¶ms);
-void srSetRainDriftRange(ScriptMethodParams ¶ms);
-void srSetRainDriftSpeed(ScriptMethodParams ¶ms);
-void srChangeRainAmount(ScriptMethodParams ¶ms);
-void srSetRainView(ScriptMethodParams ¶ms);
-void srSetRainDefaultView(ScriptMethodParams ¶ms);
-void srSetRainTransparency(ScriptMethodParams ¶ms);
-void srSetRainWindSpeed(ScriptMethodParams ¶ms);
-void srSetRainBaseline(ScriptMethodParams ¶ms);
-void srSetRainAmount(ScriptMethodParams ¶ms);
-void srSetRainFallSpeed(ScriptMethodParams ¶ms);
+ void srSetWindSpeed(ScriptMethodParams ¶ms);
+ void srSetBaseline(ScriptMethodParams ¶ms);
+ void srSetSnowDriftRange(ScriptMethodParams ¶ms);
+ void srSetSnowDriftSpeed(ScriptMethodParams ¶ms);
+ void srChangeSnowAmount(ScriptMethodParams ¶ms);
+ void srSetSnowView(ScriptMethodParams ¶ms);
+ void srSetSnowDefaultView(ScriptMethodParams ¶ms);
+ void srSetSnowTransparency(ScriptMethodParams ¶ms);
+ void srSetSnowWindSpeed(ScriptMethodParams ¶ms);
+ void srSetSnowBaseline(ScriptMethodParams ¶ms);
+ void srSetSnowAmount(ScriptMethodParams ¶ms);
+ void srSetSnowFallSpeed(ScriptMethodParams ¶ms);
+ void srSetRainDriftRange(ScriptMethodParams ¶ms);
+ void srSetRainDriftSpeed(ScriptMethodParams ¶ms);
+ void srChangeRainAmount(ScriptMethodParams ¶ms);
+ void srSetRainView(ScriptMethodParams ¶ms);
+ void srSetRainDefaultView(ScriptMethodParams ¶ms);
+ void srSetRainTransparency(ScriptMethodParams ¶ms);
+ void srSetRainWindSpeed(ScriptMethodParams ¶ms);
+ void srSetRainBaseline(ScriptMethodParams ¶ms);
+ void srSetRainAmount(ScriptMethodParams ¶ms);
+ void srSetRainFallSpeed(ScriptMethodParams ¶ms);
public:
-AGSSnowRain();
+ AGSSnowRain();
+ virtual ~AGSSnowRain() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *lpEngine) override;
+ int64 AGS_EngineOnEvent(int event, NumberPtr data) override;
};
} // namespace AGSSnowRain
diff --git a/engines/ags/plugins/ags_snow_rain/weather.cpp b/engines/ags/plugins/ags_snow_rain/weather.cpp
index 68fd082caf..a0ee89a2b5 100644
--- a/engines/ags/plugins/ags_snow_rain/weather.cpp
+++ b/engines/ags/plugins/ags_snow_rain/weather.cpp
@@ -49,16 +49,11 @@ void View::syncGame(Serializer &s) {
/*------------------------------------------------------------------*/
-Weather::Weather() : _mIsSnow(false) {
+Weather::Weather(bool IsSnow, int32 &scrWidth, int32 &scrHeight, IAGSEngine *&engine) :
+ _mIsSnow(IsSnow), _screenWidth(scrWidth), _screenHeight(scrHeight), _engine(engine) {
Initialize();
}
-Weather::Weather(bool IsSnow) : _mIsSnow(IsSnow) {
- Initialize();
-}
-
-Weather::~Weather() {}
-
void Weather::Update() {
if (_mTargetAmount > _mAmount)
_mAmount++;
diff --git a/engines/ags/plugins/ags_snow_rain/weather.h b/engines/ags/plugins/ags_snow_rain/weather.h
index a9dc851cf4..09ca343945 100644
--- a/engines/ags/plugins/ags_snow_rain/weather.h
+++ b/engines/ags/plugins/ags_snow_rain/weather.h
@@ -31,101 +31,101 @@ namespace Plugins {
namespace AGSSnowRain {
struct View {
-int view = 0;
-int loop = 0;
-bool is_default = false;
-BITMAP *bitmap = nullptr;
+ int view = 0;
+ int loop = 0;
+ bool is_default = false;
+ BITMAP *bitmap = nullptr;
-void syncGame(Serializer &s);
+ void syncGame(Serializer &s);
};
struct Drop {
-float x = 0;
-float y = 0;
-int alpha = 0;
-float speed = 0;
-int max_y = 0;
-int kind_id = 0;
-int drift = 0;
-float drift_speed = 0;
-float drift_offset = 0;
-
-void clear() {
- x = 0;
- y = 0;
- alpha = 0;
- speed = 0;
- max_y = 0;
- kind_id = 0;
- drift = 0;
- drift_speed = 0;
- drift_offset = 0;
-}
+ float x = 0;
+ float y = 0;
+ int alpha = 0;
+ float speed = 0;
+ int max_y = 0;
+ int kind_id = 0;
+ int drift = 0;
+ float drift_speed = 0;
+ float drift_offset = 0;
+
+ void clear() {
+ x = 0;
+ y = 0;
+ alpha = 0;
+ speed = 0;
+ max_y = 0;
+ kind_id = 0;
+ drift = 0;
+ drift_speed = 0;
+ drift_offset = 0;
+ }
};
class Weather {
private:
-void ClipToRange(int &variable, int min, int max);
+ void ClipToRange(int &variable, int min, int max);
-bool _mIsSnow;
+ bool _mIsSnow;
+ int32 &_screenWidth;
+ int32 &_screenHeight;
+ IAGSEngine *&_engine;
-int _mMinDrift = 0;
-int _mMaxDrift = 0;
-int _mDeltaDrift = 0;
+ int _mMinDrift = 0;
+ int _mMaxDrift = 0;
+ int _mDeltaDrift = 0;
-int _mMinDriftSpeed = 0;
-int _mMaxDriftSpeed = 0;
-int _mDeltaDriftSpeed = 0;
+ int _mMinDriftSpeed = 0;
+ int _mMaxDriftSpeed = 0;
+ int _mDeltaDriftSpeed = 0;
-int _mAmount = 0;
-int _mTargetAmount = 0;
+ int _mAmount = 0;
+ int _mTargetAmount = 0;
-int _mMinAlpha = 0;
-int _mMaxAlpha = 0;
-int _mDeltaAlpha = 0;
+ int _mMinAlpha = 0;
+ int _mMaxAlpha = 0;
+ int _mDeltaAlpha = 0;
-float _mWindSpeed = 0;
+ float _mWindSpeed = 0;
-int _mTopBaseline = 0;
-int _mBottomBaseline = 0;
-int _mDeltaBaseline = 0;
+ int _mTopBaseline = 0;
+ int _mBottomBaseline = 0;
+ int _mDeltaBaseline = 0;
-int _mMinFallSpeed = 0;
-int _mMaxFallSpeed = 0;
-int _mDeltaFallSpeed = 0;
+ int _mMinFallSpeed = 0;
+ int _mMaxFallSpeed = 0;
+ int _mDeltaFallSpeed = 0;
-Drop _mParticles[2000];
-View _mViews[5];
+ Drop _mParticles[2000];
+ View _mViews[5];
-bool _mViewsInitialized;
+ bool _mViewsInitialized;
public:
-Weather();
-Weather(bool IsSnow);
-~Weather();
-
-void Initialize();
-void InitializeParticles();
-
-void syncGame(Serializer &s);
-bool ReinitializeViews();
-
-bool IsActive();
-void Update();
-void UpdateWithDrift();
-void EnterRoom();
-
-void SetDriftRange(int min_value, int max_value);
-void SetDriftSpeed(int min_value, int max_value);
-void ChangeAmount(int amount);
-void SetView(int kind_id, int event, int view, int loop);
-void SetDefaultView(int view, int loop);
-void SetTransparency(int min_value, int max_value);
-void SetWindSpeed(int value);
-void SetBaseline(int top, int bottom);
-void SetAmount(int amount);
-void SetFallSpeed(int min_value, int max_value);
-
+ Weather(bool IsSnow, int32 &scrWidth, int32 &scrHeight, IAGSEngine *&engine);
+
+ void Initialize();
+ void InitializeParticles();
+
+ void syncGame(Serializer &s);
+ bool ReinitializeViews();
+
+ bool IsActive();
+ void Update();
+ void UpdateWithDrift();
+ void EnterRoom();
+
+ void SetDriftRange(int min_value, int max_value);
+ void SetDriftSpeed(int min_value, int max_value);
+ void ChangeAmount(int amount);
+ void SetView(int kind_id, int event, int view, int loop);
+ void SetDefaultView(int view, int loop);
+ void SetTransparency(int min_value, int max_value);
+ void SetWindSpeed(int value);
+ void SetBaseline(int top, int bottom);
+ void SetAmount(int amount);
+ void SetFallSpeed(int min_value, int max_value);
};
} // namespace AGSSnowRain
diff --git a/engines/ags/plugins/ags_sock/ags_sock.cpp b/engines/ags/plugins/ags_sock/ags_sock.cpp
index f1f7049dcd..60e364f118 100644
--- a/engines/ags/plugins/ags_sock/ags_sock.cpp
+++ b/engines/ags/plugins/ags_sock/ags_sock.cpp
@@ -29,8 +29,6 @@ namespace AGS3 {
namespace Plugins {
namespace AGSSock {
-IAGSEngine *AGSSock::_engine;
-
struct SockData : public IAGSScriptManagedObject, public Common::Array<byte> {
public:
int Dispose(const char *address, bool force) override {
@@ -88,68 +86,61 @@ public:
}
};
-AGSSock::AGSSock() : PluginBase() {
- _engine = nullptr;
-
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
-}
const char *AGSSock::AGS_GetPluginName() {
return "AGS Sock";
}
void AGSSock::AGS_EngineStartup(IAGSEngine *engine) {
- _engine = engine;
-
- SCRIPT_METHOD_EXT(SockData::Create^2, SockData_Create);
- SCRIPT_METHOD_EXT(SockData::CreateEmpty^0, SockData_CreateEmpty);
- SCRIPT_METHOD_EXT(SockData::CreateFromString^1, SockData_CreateFromString);
- SCRIPT_METHOD_EXT(SockData::get_Size, SockData_get_Size);
- SCRIPT_METHOD_EXT(SockData::set_Size, SockData_set_Size);
- SCRIPT_METHOD_EXT(SockData::geti_Chars, SockData_geti_Chars);
- SCRIPT_METHOD_EXT(SockData::seti_Chars, SockData_seti_Chars);
- SCRIPT_METHOD_EXT(SockData::AsString^0, SockData_AsString);
- SCRIPT_METHOD_EXT(SockData::Clear^0, SockData_Clear);
- SCRIPT_METHOD_EXT(SockAddr::Create^1, SockAddr_Create);
- SCRIPT_METHOD_EXT(SockAddr::CreateFromString^2, SockAddr_CreateFromString);
- SCRIPT_METHOD_EXT(SockAddr::CreateFromData^1, SockAddr_CreateFromData);
- SCRIPT_METHOD_EXT(SockAddr::CreateIP^2, SockAddr_CreateIP);
- SCRIPT_METHOD_EXT(SockAddr::CreateIPv6^2, SockAddr_CreateIPv6);
- SCRIPT_METHOD_EXT(SockAddr::get_Port, SockAddr_get_Port);
- SCRIPT_METHOD_EXT(SockAddr::set_Port, SockAddr_set_Port);
- SCRIPT_METHOD_EXT(SockAddr::get_Address, SockAddr_get_Address);
- SCRIPT_METHOD_EXT(SockAddr::set_Address, SockAddr_set_Address);
- SCRIPT_METHOD_EXT(SockAddr::get_IP, SockAddr_get_IP);
- SCRIPT_METHOD_EXT(SockAddr::set_IP, SockAddr_set_IP);
- SCRIPT_METHOD_EXT(SockAddr::GetData^0, SockAddr_GetData);
- SCRIPT_METHOD_EXT(Socket::Create^3, Socket_Create);
- SCRIPT_METHOD_EXT(Socket::CreateUDP^0, Socket_CreateUDP);
- SCRIPT_METHOD_EXT(Socket::CreateTCP^0, Socket_CreateTCP);
- SCRIPT_METHOD_EXT(Socket::CreateUDPv6^0, Socket_CreateUDPv6);
- SCRIPT_METHOD_EXT(Socket::CreateTCPv6^0, Socket_CreateTCPv6);
- SCRIPT_METHOD_EXT(Socket::get_Tag, Socket_get_Tag);
- SCRIPT_METHOD_EXT(Socket::set_Tag, Socket_set_Tag);
- SCRIPT_METHOD_EXT(Socket::get_Local, Socket_get_Local);
- SCRIPT_METHOD_EXT(Socket::get_Remote, Socket_get_Remote);
- SCRIPT_METHOD_EXT(Socket::get_Valid, Socket_get_Valid);
- SCRIPT_METHOD_EXT(Socket::ErrorString^0, Socket_ErrorString);
- SCRIPT_METHOD_EXT(Socket::Bind^1, Socket_Bind);
- SCRIPT_METHOD_EXT(Socket::Listen^1, Socket_Listen);
- SCRIPT_METHOD_EXT(Socket::Connect^2, Socket_Connect);
- SCRIPT_METHOD_EXT(Socket::Accept^0, Socket_Accept);
- SCRIPT_METHOD_EXT(Socket::Close^0, Socket_Close);
- SCRIPT_METHOD_EXT(Socket::Send^1, Socket_Send);
- SCRIPT_METHOD_EXT(Socket::SendTo^2, Socket_SendTo);
- SCRIPT_METHOD_EXT(Socket::Recv^0, Socket_Recv);
- SCRIPT_METHOD_EXT(Socket::RecvFrom^1, Socket_RecvFrom);
- SCRIPT_METHOD_EXT(Socket::SendData^1, Socket_SendData);
- SCRIPT_METHOD_EXT(Socket::SendDataTo^2, Socket_SendDataTo);
- SCRIPT_METHOD_EXT(Socket::RecvData^0, Socket_RecvData);
- SCRIPT_METHOD_EXT(Socket::RecvDataFrom^1, Socket_RecvDataFrom);
- SCRIPT_METHOD_EXT(Socket::GetOption^2, Socket_GetOption);
- SCRIPT_METHOD_EXT(Socket::SetOption^3, Socket_SetOption);
-
+ PluginBase::AGS_EngineStartup(engine);
+
+ SCRIPT_METHOD(SockData::Create^2, AGSSock::SockData_Create);
+ SCRIPT_METHOD(SockData::CreateEmpty^0, AGSSock::SockData_CreateEmpty);
+ SCRIPT_METHOD(SockData::CreateFromString^1, AGSSock::SockData_CreateFromString);
+ SCRIPT_METHOD(SockData::get_Size, AGSSock::SockData_get_Size);
+ SCRIPT_METHOD(SockData::set_Size, AGSSock::SockData_set_Size);
+ SCRIPT_METHOD(SockData::geti_Chars, AGSSock::SockData_geti_Chars);
+ SCRIPT_METHOD(SockData::seti_Chars, AGSSock::SockData_seti_Chars);
+ SCRIPT_METHOD(SockData::AsString^0, AGSSock::SockData_AsString);
+ SCRIPT_METHOD(SockData::Clear^0, AGSSock::SockData_Clear);
+ SCRIPT_METHOD(SockAddr::Create^1, AGSSock::SockAddr_Create);
+ SCRIPT_METHOD(SockAddr::CreateFromString^2, AGSSock::SockAddr_CreateFromString);
+ SCRIPT_METHOD(SockAddr::CreateFromData^1, AGSSock::SockAddr_CreateFromData);
+ SCRIPT_METHOD(SockAddr::CreateIP^2, AGSSock::SockAddr_CreateIP);
+ SCRIPT_METHOD(SockAddr::CreateIPv6^2, AGSSock::SockAddr_CreateIPv6);
+ SCRIPT_METHOD(SockAddr::get_Port, AGSSock::SockAddr_get_Port);
+ SCRIPT_METHOD(SockAddr::set_Port, AGSSock::SockAddr_set_Port);
+ SCRIPT_METHOD(SockAddr::get_Address, AGSSock::SockAddr_get_Address);
+ SCRIPT_METHOD(SockAddr::set_Address, AGSSock::SockAddr_set_Address);
+ SCRIPT_METHOD(SockAddr::get_IP, AGSSock::SockAddr_get_IP);
+ SCRIPT_METHOD(SockAddr::set_IP, AGSSock::SockAddr_set_IP);
+ SCRIPT_METHOD(SockAddr::GetData^0, AGSSock::SockAddr_GetData);
+ SCRIPT_METHOD(Socket::Create^3, AGSSock::Socket_Create);
+ SCRIPT_METHOD(Socket::CreateUDP^0, AGSSock::Socket_CreateUDP);
+ SCRIPT_METHOD(Socket::CreateTCP^0, AGSSock::Socket_CreateTCP);
+ SCRIPT_METHOD(Socket::CreateUDPv6^0, AGSSock::Socket_CreateUDPv6);
+ SCRIPT_METHOD(Socket::CreateTCPv6^0, AGSSock::Socket_CreateTCPv6);
+ SCRIPT_METHOD(Socket::get_Tag, AGSSock::Socket_get_Tag);
+ SCRIPT_METHOD(Socket::set_Tag, AGSSock::Socket_set_Tag);
+ SCRIPT_METHOD(Socket::get_Local, AGSSock::Socket_get_Local);
+ SCRIPT_METHOD(Socket::get_Remote, AGSSock::Socket_get_Remote);
+ SCRIPT_METHOD(Socket::get_Valid, AGSSock::Socket_get_Valid);
+ SCRIPT_METHOD(Socket::ErrorString^0, AGSSock::Socket_ErrorString);
+ SCRIPT_METHOD(Socket::Bind^1, AGSSock::Socket_Bind);
+ SCRIPT_METHOD(Socket::Listen^1, AGSSock::Socket_Listen);
+ SCRIPT_METHOD(Socket::Connect^2, AGSSock::Socket_Connect);
+ SCRIPT_METHOD(Socket::Accept^0, AGSSock::Socket_Accept);
+ SCRIPT_METHOD(Socket::Close^0, AGSSock::Socket_Close);
+ SCRIPT_METHOD(Socket::Send^1, AGSSock::Socket_Send);
+ SCRIPT_METHOD(Socket::SendTo^2, AGSSock::Socket_SendTo);
+ SCRIPT_METHOD(Socket::Recv^0, AGSSock::Socket_Recv);
+ SCRIPT_METHOD(Socket::RecvFrom^1, AGSSock::Socket_RecvFrom);
+ SCRIPT_METHOD(Socket::SendData^1, AGSSock::Socket_SendData);
+ SCRIPT_METHOD(Socket::SendDataTo^2, AGSSock::Socket_SendDataTo);
+ SCRIPT_METHOD(Socket::RecvData^0, AGSSock::Socket_RecvData);
+ SCRIPT_METHOD(Socket::RecvDataFrom^1, AGSSock::Socket_RecvDataFrom);
+ SCRIPT_METHOD(Socket::GetOption^2, AGSSock::Socket_GetOption);
+ SCRIPT_METHOD(Socket::SetOption^3, AGSSock::Socket_SetOption);
}
void AGSSock::SockData_Create(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/ags_sock/ags_sock.h b/engines/ags/plugins/ags_sock/ags_sock.h
index 8dcbc15f16..8c1de1463e 100644
--- a/engines/ags/plugins/ags_sock/ags_sock.h
+++ b/engines/ags/plugins/ags_sock/ags_sock.h
@@ -23,19 +23,16 @@
#ifndef AGS_PLUGINS_AGS_SOCK_H
#define AGS_PLUGINS_AGS_SOCK_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace AGSSock {
class AGSSock : public PluginBase {
+ SCRIPT_HASH(AGSSock)
private:
- IAGSEngine *_engine;
- Common::String *_text;
-private:
- const char *AGS_GetPluginName();
- void AGS_EngineStartup(IAGSEngine *engine) override;
+ Common::String _text;
/**
* Creates a new data container with specified size
@@ -295,7 +292,12 @@ private:
void Socket_SetOption(ScriptMethodParams ¶ms);
public:
- AGSSock();
+ AGSSock() : PluginBase() {}
+ virtual ~AGSSock() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *engine) override;
+
};
} // namespace AGSSock
diff --git a/engines/ags/plugins/ags_sprite_font/ags_sprite_font.cpp b/engines/ags/plugins/ags_sprite_font/ags_sprite_font.cpp
index e5c28070f8..f3d7ce2ca4 100644
--- a/engines/ags/plugins/ags_sprite_font/ags_sprite_font.cpp
+++ b/engines/ags/plugins/ags_sprite_font/ags_sprite_font.cpp
@@ -69,29 +69,15 @@ namespace AGSSpriteFont {
#pragma endregion
-IAGSEngine *AGSSpriteFont::_engine;
-SpriteFontRenderer *AGSSpriteFont::_fontRenderer;
-VariableWidthSpriteFontRenderer *AGSSpriteFont::_vWidthRenderer;
-
#define STRINGIFY(s) STRINGIFY_X(s)
#define STRINGIFY_X(s) #s
-AGSSpriteFont::AGSSpriteFont() : PluginBase() {
- _engine = nullptr;
- _fontRenderer = nullptr;
- _vWidthRenderer = nullptr;
-
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
- DLL_METHOD(AGS_EngineShutdown);
-}
-
const char *AGSSpriteFont::AGS_GetPluginName() {
return "AGSSpriteFont";
}
void AGSSpriteFont::AGS_EngineStartup(IAGSEngine *engine) {
- _engine = engine;
+ PluginBase::AGS_EngineStartup(engine);
if (_fontRenderer == nullptr) {
_engine->PrintDebugConsole("AGSSpriteFont: Init fixed width renderer");
@@ -105,13 +91,13 @@ void AGSSpriteFont::AGS_EngineStartup(IAGSEngine *engine) {
if (_engine->version < MIN_ENGINE_VERSION)
_engine->AbortGame("Plugin needs engine version " STRINGIFY(MIN_ENGINE_VERSION) " or newer.");
- //register functions
+ // Register functions
_engine->PrintDebugConsole("AGSSpriteFont: Register functions");
- SCRIPT_METHOD(SetSpriteFont);
- SCRIPT_METHOD(SetVariableSpriteFont);
- SCRIPT_METHOD(SetGlyph);
- SCRIPT_METHOD(SetSpacing);
- SCRIPT_METHOD(SetLineHeightAdjust);
+ SCRIPT_METHOD(SetSpriteFont, AGSSpriteFont::SetSpriteFont);
+ SCRIPT_METHOD(SetVariableSpriteFont, AGSSpriteFont::SetVariableSpriteFont);
+ SCRIPT_METHOD(SetGlyph, AGSSpriteFont::SetGlyph);
+ SCRIPT_METHOD(SetSpacing, AGSSpriteFont::SetSpacing);
+ SCRIPT_METHOD(SetLineHeightAdjust, AGSSpriteFont::SetLineHeightAdjust);
}
void AGSSpriteFont::AGS_EngineShutdown() {
diff --git a/engines/ags/plugins/ags_sprite_font/ags_sprite_font.h b/engines/ags/plugins/ags_sprite_font/ags_sprite_font.h
index 2029a4d528..dec76c55d8 100644
--- a/engines/ags/plugins/ags_sprite_font/ags_sprite_font.h
+++ b/engines/ags/plugins/ags_sprite_font/ags_sprite_font.h
@@ -23,7 +23,7 @@
#ifndef AGS_PLUGINS_AGS_SPRITE_FONT_AGS_SPRITE_FONT_H
#define AGS_PLUGINS_AGS_SPRITE_FONT_AGS_SPRITE_FONT_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
#include "ags/plugins/ags_sprite_font/sprite_font_renderer.h"
#include "ags/plugins/ags_sprite_font/variable_width_sprite_font.h"
@@ -36,25 +36,25 @@ namespace Plugins {
namespace AGSSpriteFont {
class AGSSpriteFont : public PluginBase {
+ SCRIPT_HASH(AGSSpriteFont)
protected:
-IAGSEngine *_engine;
-SpriteFontRenderer *_fontRenderer;
-VariableWidthSpriteFontRenderer *_vWidthRenderer;
-
-protected:
-const char *AGS_GetPluginName();
-void AGS_EngineStartup(IAGSEngine *lpEngine);
-void AGS_EngineShutdown();
+ SpriteFontRenderer *_fontRenderer;
+ VariableWidthSpriteFontRenderer *_vWidthRenderer;
private:
-void SetSpriteFont(ScriptMethodParams ¶ms);
-void SetVariableSpriteFont(ScriptMethodParams ¶ms);
-void SetGlyph(ScriptMethodParams ¶ms);
-void SetSpacing(ScriptMethodParams ¶ms);
-void SetLineHeightAdjust(ScriptMethodParams ¶ms);
+ void SetSpriteFont(ScriptMethodParams ¶ms);
+ void SetVariableSpriteFont(ScriptMethodParams ¶ms);
+ void SetGlyph(ScriptMethodParams ¶ms);
+ void SetSpacing(ScriptMethodParams ¶ms);
+ void SetLineHeightAdjust(ScriptMethodParams ¶ms);
public:
-AGSSpriteFont();
+ AGSSpriteFont() : PluginBase() {}
+ virtual ~AGSSpriteFont() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *lpEngine) override;
+ void AGS_EngineShutdown() override;
};
} // namespace AGSSpriteFont
diff --git a/engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.cpp b/engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.cpp
index 21eb879b7e..a89e5aa74b 100644
--- a/engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.cpp
+++ b/engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.cpp
@@ -28,10 +28,6 @@ namespace AGS3 {
namespace Plugins {
namespace AGSSpriteFont {
-AGSSpriteFontClifftopGames::AGSSpriteFontClifftopGames() : AGSSpriteFont() {
- DLL_METHOD(AGS_EngineStartup);
-}
-
void AGSSpriteFontClifftopGames::AGS_EngineStartup(IAGSEngine *engine) {
// Use custom font renderers
// They need to be set before calling AGSSpriteFont::AGS_EngineStartup()
@@ -43,7 +39,7 @@ void AGSSpriteFontClifftopGames::AGS_EngineStartup(IAGSEngine *engine) {
AGSSpriteFont::AGS_EngineStartup(engine);
- SCRIPT_METHOD(SetLineHeightAdjust);
+ SCRIPT_METHOD(SetLineHeightAdjust, AGSSpriteFontClifftopGames::SetLineHeightAdjust);
}
void AGSSpriteFontClifftopGames::SetLineHeightAdjust(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.h b/engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.h
index c1bb7dc2e4..ebbf327f16 100644
--- a/engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.h
+++ b/engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.h
@@ -30,13 +30,15 @@ namespace Plugins {
namespace AGSSpriteFont {
class AGSSpriteFontClifftopGames : public AGSSpriteFont {
+ SCRIPT_HASH(AGSSpriteFontClifftopGames)
private:
-void AGS_EngineStartup(IAGSEngine *engine) override;
-
-void SetLineHeightAdjust(ScriptMethodParams ¶ms);
+ void SetLineHeightAdjust(ScriptMethodParams ¶ms);
public:
-AGSSpriteFontClifftopGames();
+ AGSSpriteFontClifftopGames() : AGSSpriteFont() {}
+ virtual ~AGSSpriteFontClifftopGames() {}
+
+ void AGS_EngineStartup(IAGSEngine *engine) override;
};
} // namespace AGSSpriteFont
diff --git a/engines/ags/plugins/ags_sprite_font/sprite_font_renderer.cpp b/engines/ags/plugins/ags_sprite_font/sprite_font_renderer.cpp
index 61d7d99db5..fdc28ce0b1 100644
--- a/engines/ags/plugins/ags_sprite_font/sprite_font_renderer.cpp
+++ b/engines/ags/plugins/ags_sprite_font/sprite_font_renderer.cpp
@@ -31,7 +31,6 @@ SpriteFontRenderer::SpriteFontRenderer(IAGSEngine *engine) {
_engine = engine;
}
-
SpriteFontRenderer::~SpriteFontRenderer(void) {
for (int i = 0; i < (int)_fonts.size(); i++)
delete _fonts[i];
diff --git a/engines/ags/plugins/ags_sprite_font/sprite_font_renderer.h b/engines/ags/plugins/ags_sprite_font/sprite_font_renderer.h
index 983b8a63c3..11825d6af6 100644
--- a/engines/ags/plugins/ags_sprite_font/sprite_font_renderer.h
+++ b/engines/ags/plugins/ags_sprite_font/sprite_font_renderer.h
@@ -32,26 +32,27 @@ namespace Plugins {
namespace AGSSpriteFont {
class SpriteFontRenderer : public IAGSFontRenderer {
+protected:
+ IAGSEngine *_engine;
+ SpriteFont *getFontFor(int fontNum);
+ void Draw(BITMAP *src, BITMAP *dest, int destx, int desty, int srcx, int srcy, int width, int height);
+ std::vector<SpriteFont *> _fonts;
+
public:
-SpriteFontRenderer(IAGSEngine *engine);
-virtual ~SpriteFontRenderer(void);
-bool LoadFromDisk(int fontNumber, int fontSize) override {
- return true;
-}
-void FreeMemory(int fontNumber) override { }
-bool SupportsExtendedCharacters(int fontNumber) override;
-int GetTextWidth(const char *text, int fontNumber) override;
-int GetTextHeight(const char *text, int fontNumber) override;
-void RenderText(const char *text, int fontNumber, BITMAP *destination, int x, int y, int colour) override;
-void AdjustYCoordinateForFont(int *ycoord, int fontNumber) override { }
-void EnsureTextValidForFont(char *text, int fontNumber) override;
-void SetSpriteFont(int fontNum, int sprite, int rows, int columns, int charWidth, int charHeight, int charMin, int charMax, bool use32bit);
+ SpriteFontRenderer(IAGSEngine *engine);
+ virtual ~SpriteFontRenderer();
-protected:
-SpriteFont *getFontFor(int fontNum);
-void Draw(BITMAP *src, BITMAP *dest, int destx, int desty, int srcx, int srcy, int width, int height);
-std::vector<SpriteFont * > _fonts;
-IAGSEngine *_engine;
+ bool LoadFromDisk(int fontNumber, int fontSize) override {
+ return true;
+ }
+ void FreeMemory(int fontNumber) override { }
+ bool SupportsExtendedCharacters(int fontNumber) override;
+ int GetTextWidth(const char *text, int fontNumber) override;
+ int GetTextHeight(const char *text, int fontNumber) override;
+ void RenderText(const char *text, int fontNumber, BITMAP *destination, int x, int y, int colour) override;
+ void AdjustYCoordinateForFont(int *ycoord, int fontNumber) override { }
+ void EnsureTextValidForFont(char *text, int fontNumber) override;
+ void SetSpriteFont(int fontNum, int sprite, int rows, int columns, int charWidth, int charHeight, int charMin, int charMax, bool use32bit);
};
} // namespace AGSSpriteFont
diff --git a/engines/ags/plugins/ags_sprite_font/variable_width_font.cpp b/engines/ags/plugins/ags_sprite_font/variable_width_font.cpp
index 226eaeddac..afd159526f 100644
--- a/engines/ags/plugins/ags_sprite_font/variable_width_font.cpp
+++ b/engines/ags/plugins/ags_sprite_font/variable_width_font.cpp
@@ -26,18 +26,6 @@ namespace AGS3 {
namespace Plugins {
namespace AGSSpriteFont {
-VariableWidthFont::VariableWidthFont(void) {
- Spacing = 0;
- FontReplaced = 0;
- SpriteNumber = 0;
- LineHeightAdjust = 0;
- LineSpacingAdjust = 0;
- LineSpacingOverride = 0;
-}
-
-
-VariableWidthFont::~VariableWidthFont(void) {}
-
void VariableWidthFont::SetGlyph(int character, int x, int y, int width, int height) {
characters[character].X = x;
characters[character].Y = y;
diff --git a/engines/ags/plugins/ags_sprite_font/variable_width_font.h b/engines/ags/plugins/ags_sprite_font/variable_width_font.h
index 64b3f00e1f..3488c16c80 100644
--- a/engines/ags/plugins/ags_sprite_font/variable_width_font.h
+++ b/engines/ags/plugins/ags_sprite_font/variable_width_font.h
@@ -33,17 +33,17 @@ namespace AGSSpriteFont {
class VariableWidthFont {
public:
-VariableWidthFont(void);
-~VariableWidthFont(void);
-void SetGlyph(int character, int x, int y, int width, int height);
-void SetLineHeightAdjust(int LineHeight, int SpacingHeight, int SpacingOverride);
-int SpriteNumber;
-int FontReplaced;
-int Spacing;
-int LineHeightAdjust;
-int LineSpacingAdjust;
-int LineSpacingOverride;
-std::map<char, CharacterEntry> characters;
+ int SpriteNumber = 0;
+ int FontReplaced = 0;
+ int Spacing = 0;
+ int LineHeightAdjust = 0;
+ int LineSpacingAdjust = 0;
+ int LineSpacingOverride = 0;
+ std::map<char, CharacterEntry> characters;
+
+public:
+ void SetGlyph(int character, int x, int y, int width, int height);
+ void SetLineHeightAdjust(int LineHeight, int SpacingHeight, int SpacingOverride);
};
} // namespace AGSSpriteFont
diff --git a/engines/ags/plugins/ags_sprite_font/variable_width_sprite_font.cpp b/engines/ags/plugins/ags_sprite_font/variable_width_sprite_font.cpp
index fc9583310d..0c3fb30c2b 100644
--- a/engines/ags/plugins/ags_sprite_font/variable_width_sprite_font.cpp
+++ b/engines/ags/plugins/ags_sprite_font/variable_width_sprite_font.cpp
@@ -31,16 +31,12 @@ VariableWidthSpriteFontRenderer::VariableWidthSpriteFontRenderer(IAGSEngine *eng
_engine = engine;
}
-
VariableWidthSpriteFontRenderer::~VariableWidthSpriteFontRenderer(void) {
for (int i = 0; i < (int)_fonts.size(); i++)
delete _fonts[i];
_fonts.clear();
}
-
-
-
bool VariableWidthSpriteFontRenderer::SupportsExtendedCharacters(int fontNumber) {
return false;
}
diff --git a/engines/ags/plugins/ags_sprite_font/variable_width_sprite_font.h b/engines/ags/plugins/ags_sprite_font/variable_width_sprite_font.h
index cd64927b8f..f6a21950bb 100644
--- a/engines/ags/plugins/ags_sprite_font/variable_width_sprite_font.h
+++ b/engines/ags/plugins/ags_sprite_font/variable_width_sprite_font.h
@@ -32,29 +32,31 @@ namespace Plugins {
namespace AGSSpriteFont {
class VariableWidthSpriteFontRenderer : public IAGSFontRenderer {
+protected:
+ IAGSEngine *_engine;
+ std::vector<VariableWidthFont *> _fonts;
+
+ VariableWidthFont *getFontFor(int fontNum);
+ void Draw(BITMAP *src, BITMAP *dest, int destx, int desty, int srcx, int srcy, int width, int height);
public:
-VariableWidthSpriteFontRenderer(IAGSEngine *engine);
-virtual ~VariableWidthSpriteFontRenderer();
-bool LoadFromDisk(int fontNumber, int fontSize) override {
- return true;
-}
-void FreeMemory(int fontNumber) override { }
-bool SupportsExtendedCharacters(int fontNumber) override;
-int GetTextWidth(const char *text, int fontNumber) override;
-int GetTextHeight(const char *text, int fontNumber) override;
-void RenderText(const char *text, int fontNumber, BITMAP *destination, int x, int y, int colour) override;
-void AdjustYCoordinateForFont(int *ycoord, int fontNumber) override { }
-void EnsureTextValidForFont(char *text, int fontNumber) override;
-void SetGlyph(int fontNum, int charNum, int x, int y, int width, int height);
-void SetSprite(int fontNum, int spriteNum);
-void SetSpacing(int fontNum, int spacing);
-void SetLineHeightAdjust(int fontNum, int LineHeight, int SpacingHeight, int SpacingOverride);
+ VariableWidthSpriteFontRenderer(IAGSEngine *engine);
+ virtual ~VariableWidthSpriteFontRenderer();
-protected:
-IAGSEngine *_engine;
-std::vector<VariableWidthFont * > _fonts;
-VariableWidthFont *getFontFor(int fontNum);
-void Draw(BITMAP *src, BITMAP *dest, int destx, int desty, int srcx, int srcy, int width, int height);
+ bool LoadFromDisk(int fontNumber, int fontSize) override {
+ return true;
+ }
+
+ void FreeMemory(int fontNumber) override { }
+ bool SupportsExtendedCharacters(int fontNumber) override;
+ int GetTextWidth(const char *text, int fontNumber) override;
+ int GetTextHeight(const char *text, int fontNumber) override;
+ void RenderText(const char *text, int fontNumber, BITMAP *destination, int x, int y, int colour) override;
+ void AdjustYCoordinateForFont(int *ycoord, int fontNumber) override { }
+ void EnsureTextValidForFont(char *text, int fontNumber) override;
+ void SetGlyph(int fontNum, int charNum, int x, int y, int width, int height);
+ void SetSprite(int fontNum, int spriteNum);
+ void SetSpacing(int fontNum, int spacing);
+ void SetLineHeightAdjust(int fontNum, int LineHeight, int SpacingHeight, int SpacingOverride);
};
} // namespace AGSSpriteFont
diff --git a/engines/ags/plugins/ags_sprite_font/variable_width_sprite_font_clifftop.h b/engines/ags/plugins/ags_sprite_font/variable_width_sprite_font_clifftop.h
index 7795d99e80..d0c8024470 100644
--- a/engines/ags/plugins/ags_sprite_font/variable_width_sprite_font_clifftop.h
+++ b/engines/ags/plugins/ags_sprite_font/variable_width_sprite_font_clifftop.h
@@ -31,15 +31,15 @@ namespace Plugins {
namespace AGSSpriteFont {
class VariableWidthSpriteFontRendererClifftop : public VariableWidthSpriteFontRenderer {
-public:
-VariableWidthSpriteFontRendererClifftop(IAGSEngine *engine);
-virtual ~VariableWidthSpriteFontRendererClifftop(void);
+private:
+ void Draw(BITMAP *src, BITMAP *dest, int destx, int desty, int srcx, int srcy, int width, int height, int colour);
-int GetTextHeight(const char *text, int fontNumber) override;
-void RenderText(const char *text, int fontNumber, BITMAP *destination, int x, int y, int colour) override;
+public:
+ VariableWidthSpriteFontRendererClifftop(IAGSEngine *engine);
+ virtual ~VariableWidthSpriteFontRendererClifftop(void);
-private:
-void Draw(BITMAP *src, BITMAP *dest, int destx, int desty, int srcx, int srcy, int width, int height, int colour);
+ int GetTextHeight(const char *text, int fontNumber) override;
+ void RenderText(const char *text, int fontNumber, BITMAP *destination, int x, int y, int colour) override;
};
} // namespace AGSSpriteFont
diff --git a/engines/ags/plugins/ags_tcp_ip/ags_tcp_ip.cpp b/engines/ags/plugins/ags_tcp_ip/ags_tcp_ip.cpp
index bad988c624..3240a8ae63 100644
--- a/engines/ags/plugins/ags_tcp_ip/ags_tcp_ip.cpp
+++ b/engines/ags/plugins/ags_tcp_ip/ags_tcp_ip.cpp
@@ -20,19 +20,12 @@
*
*/
-#include "ags/lib/allegro.h"
#include "ags/plugins/ags_tcp_ip/ags_tcp_ip.h"
namespace AGS3 {
namespace Plugins {
namespace AGSTcpIp {
-
-AGSTcpIp::AGSTcpIp() : PluginBase() {
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
-}
-
const char *AGSTcpIp::AGS_GetPluginName() {
return "TCP/IP (a-v-o)";
}
diff --git a/engines/ags/plugins/ags_tcp_ip/ags_tcp_ip.h b/engines/ags/plugins/ags_tcp_ip/ags_tcp_ip.h
index f0bb6af2b7..6449518ed7 100644
--- a/engines/ags/plugins/ags_tcp_ip/ags_tcp_ip.h
+++ b/engines/ags/plugins/ags_tcp_ip/ags_tcp_ip.h
@@ -23,7 +23,7 @@
#ifndef AGS_PLUGINS_AGS_TCP_IP_AGS_TCP_IP_H
#define AGS_PLUGINS_AGS_TCP_IP_AGS_TCP_IP_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
#include "ags/lib/allegro.h"
namespace AGS3 {
@@ -31,12 +31,13 @@ namespace Plugins {
namespace AGSTcpIp {
class AGSTcpIp : public PluginBase {
-private:
-const char *AGS_GetPluginName();
-void AGS_EngineStartup(IAGSEngine *engine) override;
-
+ SCRIPT_HASH(AGSTcpIp)
public:
-AGSTcpIp();
+ AGSTcpIp() : PluginBase() {}
+ virtual ~AGSTcpIp() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *engine) override;
};
} // namespace AGSTcpIp
diff --git a/engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.cpp b/engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.cpp
index 1ed5716e33..423748a656 100644
--- a/engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.cpp
+++ b/engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.cpp
@@ -27,31 +27,24 @@ namespace AGS3 {
namespace Plugins {
namespace AGSWadjetUtil {
-IAGSEngine *AGSWadjetUtil::_engine;
-
-AGSWadjetUtil::AGSWadjetUtil() : PluginBase() {
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
-}
-
const char *AGSWadjetUtil::AGS_GetPluginName() {
return "AGSWadjetUtil";
}
void AGSWadjetUtil::AGS_EngineStartup(IAGSEngine *engine) {
- _engine = engine;
+ PluginBase::AGS_EngineStartup(engine);
// Register functions
- SCRIPT_METHOD(IsOnPhone);
- SCRIPT_METHOD(FakeKeypress);
- SCRIPT_METHOD(IosSetAchievementValue);
- SCRIPT_METHOD(IosGetAchievementValue);
- SCRIPT_METHOD(IosShowAchievements);
- SCRIPT_METHOD(IosResetAchievements);
- SCRIPT_METHOD(MobileGetAchievement);
- SCRIPT_METHOD(MobileSetAchievement);
- SCRIPT_METHOD(MobileShowAchievements);
- SCRIPT_METHOD(MobileResetAchievements);
+ SCRIPT_METHOD(IsOnPhone, AGSWadjetUtil::IsOnPhone);
+ SCRIPT_METHOD(FakeKeypress, AGSWadjetUtil::FakeKeypress);
+ SCRIPT_METHOD(IosSetAchievementValue, AGSWadjetUtil::IosSetAchievementValue);
+ SCRIPT_METHOD(IosGetAchievementValue, AGSWadjetUtil::IosGetAchievementValue);
+ SCRIPT_METHOD(IosShowAchievements, AGSWadjetUtil::IosShowAchievements);
+ SCRIPT_METHOD(IosResetAchievements, AGSWadjetUtil::IosResetAchievements);
+ SCRIPT_METHOD(MobileGetAchievement, AGSWadjetUtil::MobileGetAchievement);
+ SCRIPT_METHOD(MobileSetAchievement, AGSWadjetUtil::MobileSetAchievement);
+ SCRIPT_METHOD(MobileShowAchievements, AGSWadjetUtil::MobileShowAchievements);
+ SCRIPT_METHOD(MobileResetAchievements, AGSWadjetUtil::MobileResetAchievements);
}
void AGSWadjetUtil::IsOnPhone(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.h b/engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.h
index a8a0e0857f..ec06357489 100644
--- a/engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.h
+++ b/engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.h
@@ -23,33 +23,32 @@
#ifndef AGS_PLUGINS_AGS_WADJET_UTIL_AGS_WADJET_UTIL_H
#define AGS_PLUGINS_AGS_WADJET_UTIL_AGS_WADJET_UTIL_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace AGSWadjetUtil {
class AGSWadjetUtil : public PluginBase {
+ SCRIPT_HASH(AGSWadjetUtil)
private:
-IAGSEngine *_engine;
-private:
-const char *AGS_GetPluginName();
-void AGS_EngineStartup(IAGSEngine *lpEngine);
-
-private:
-void IsOnPhone(ScriptMethodParams ¶ms);
-void FakeKeypress(ScriptMethodParams ¶ms);
-void IosSetAchievementValue(ScriptMethodParams ¶ms);
-void IosGetAchievementValue(ScriptMethodParams ¶ms);
-void IosShowAchievements(ScriptMethodParams ¶ms);
-void IosResetAchievements(ScriptMethodParams ¶ms);
-void MobileGetAchievement(ScriptMethodParams ¶ms);
-void MobileSetAchievement(ScriptMethodParams ¶ms);
-void MobileShowAchievements(ScriptMethodParams ¶ms);
-void MobileResetAchievements(ScriptMethodParams ¶ms);
+ void IsOnPhone(ScriptMethodParams ¶ms);
+ void FakeKeypress(ScriptMethodParams ¶ms);
+ void IosSetAchievementValue(ScriptMethodParams ¶ms);
+ void IosGetAchievementValue(ScriptMethodParams ¶ms);
+ void IosShowAchievements(ScriptMethodParams ¶ms);
+ void IosResetAchievements(ScriptMethodParams ¶ms);
+ void MobileGetAchievement(ScriptMethodParams ¶ms);
+ void MobileSetAchievement(ScriptMethodParams ¶ms);
+ void MobileShowAchievements(ScriptMethodParams ¶ms);
+ void MobileResetAchievements(ScriptMethodParams ¶ms);
public:
-AGSWadjetUtil();
+ AGSWadjetUtil() : PluginBase() {}
+ virtual ~AGSWadjetUtil() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *lpEngine) override;
};
} // namespace AGSWadjetUtil
diff --git a/engines/ags/plugins/ags_waves/ags_waves.cpp b/engines/ags/plugins/ags_waves/ags_waves.cpp
index 84837d36ac..75f9788757 100644
--- a/engines/ags/plugins/ags_waves/ags_waves.cpp
+++ b/engines/ags/plugins/ags_waves/ags_waves.cpp
@@ -26,72 +26,63 @@ namespace AGS3 {
namespace Plugins {
namespace AGSWaves {
-IAGSEngine *AGSWaves::_engine;
-
-AGSWaves::AGSWaves() : PluginBase() {
- _engine = nullptr;
-
- DLL_METHOD(AGS_GetPluginName);
- DLL_METHOD(AGS_EngineStartup);
-}
-
const char *AGSWaves::AGS_GetPluginName() {
return "AGS Waves";
}
void AGSWaves::AGS_EngineStartup(IAGSEngine *engine) {
- _engine = engine;
-
- SCRIPT_METHOD(DrawScreenEffect);
- SCRIPT_METHOD(SFX_Play);
- SCRIPT_METHOD(SFX_SetVolume);
- SCRIPT_METHOD(SFX_GetVolume);
- SCRIPT_METHOD(Music_Play);
- SCRIPT_METHOD(Music_GetVolume);
- SCRIPT_METHOD(Music_SetVolume);
- SCRIPT_METHOD(SFX_Stop);
- SCRIPT_METHOD(SFX_SetPosition);
- SCRIPT_METHOD(SFX_SetGlobalVolume);
- SCRIPT_METHOD(Load_SFX);
- SCRIPT_METHOD(Audio_Apply_Filter);
- SCRIPT_METHOD(Audio_Remove_Filter);
- SCRIPT_METHOD(SFX_AllowOverlap);
- SCRIPT_METHOD(SFX_Filter);
- SCRIPT_METHOD(DrawBlur);
- SCRIPT_METHOD(DrawTunnel);
- SCRIPT_METHOD(DrawCylinder);
- SCRIPT_METHOD(DrawForceField);
- SCRIPT_METHOD(Grayscale);
- SCRIPT_METHOD(ReadWalkBehindIntoSprite);
- SCRIPT_METHOD(AdjustSpriteFont);
- SCRIPT_METHOD(SpriteGradient);
- SCRIPT_METHOD(Outline);
- SCRIPT_METHOD(OutlineOnly);
- SCRIPT_METHOD(SaveVariable);
- SCRIPT_METHOD(ReadVariable);
- SCRIPT_METHOD(GameDoOnceOnly);
- SCRIPT_METHOD(SetGDState);
- SCRIPT_METHOD(GetGDState);
- SCRIPT_METHOD(ResetAllGD);
- SCRIPT_METHOD(SpriteSkew);
- SCRIPT_METHOD(FireUpdate);
- SCRIPT_METHOD(WindUpdate);
- SCRIPT_METHOD(SetWindValues);
- SCRIPT_METHOD(ReturnWidth);
- SCRIPT_METHOD(ReturnHeight);
- SCRIPT_METHOD(ReturnNewHeight);
- SCRIPT_METHOD(ReturnNewWidth);
- SCRIPT_METHOD(Warper);
- SCRIPT_METHOD(SetWarper);
- SCRIPT_METHOD(RainUpdate);
- SCRIPT_METHOD(BlendTwoSprites);
- SCRIPT_METHOD(Blend);
- SCRIPT_METHOD(Dissolve);
- SCRIPT_METHOD(ReverseTransparency);
- SCRIPT_METHOD(NoiseCreator);
- SCRIPT_METHOD(TintProper);
- SCRIPT_METHOD(GetWalkbehindBaserine);
- SCRIPT_METHOD(SetWalkbehindBaserine);
+ PluginBase::AGS_EngineStartup(engine);
+
+ SCRIPT_METHOD(DrawScreenEffect, AGSWaves::DrawScreenEffect);
+ SCRIPT_METHOD(SFX_Play, AGSWaves::SFX_Play);
+ SCRIPT_METHOD(SFX_SetVolume, AGSWaves::SFX_SetVolume);
+ SCRIPT_METHOD(SFX_GetVolume, AGSWaves::SFX_GetVolume);
+ SCRIPT_METHOD(Music_Play, AGSWaves::Music_Play);
+ SCRIPT_METHOD(Music_GetVolume, AGSWaves::Music_GetVolume);
+ SCRIPT_METHOD(Music_SetVolume, AGSWaves::Music_SetVolume);
+ SCRIPT_METHOD(SFX_Stop, AGSWaves::SFX_Stop);
+ SCRIPT_METHOD(SFX_SetPosition, AGSWaves::SFX_SetPosition);
+ SCRIPT_METHOD(SFX_SetGlobalVolume, AGSWaves::SFX_SetGlobalVolume);
+ SCRIPT_METHOD(Load_SFX, AGSWaves::Load_SFX);
+ SCRIPT_METHOD(Audio_Apply_Filter, AGSWaves::Audio_Apply_Filter);
+ SCRIPT_METHOD(Audio_Remove_Filter, AGSWaves::Audio_Remove_Filter);
+ SCRIPT_METHOD(SFX_AllowOverlap, AGSWaves::SFX_AllowOverlap);
+ SCRIPT_METHOD(SFX_Filter, AGSWaves::SFX_Filter);
+ SCRIPT_METHOD(DrawBlur, AGSWaves::DrawBlur);
+ SCRIPT_METHOD(DrawTunnel, AGSWaves::DrawTunnel);
+ SCRIPT_METHOD(DrawCylinder, AGSWaves::DrawCylinder);
+ SCRIPT_METHOD(DrawForceField, AGSWaves::DrawForceField);
+ SCRIPT_METHOD(Grayscale, AGSWaves::Grayscale);
+ SCRIPT_METHOD(ReadWalkBehindIntoSprite, AGSWaves::ReadWalkBehindIntoSprite);
+ SCRIPT_METHOD(AdjustSpriteFont, AGSWaves::AdjustSpriteFont);
+ SCRIPT_METHOD(SpriteGradient, AGSWaves::SpriteGradient);
+ SCRIPT_METHOD(Outline, AGSWaves::Outline);
+ SCRIPT_METHOD(OutlineOnly, AGSWaves::OutlineOnly);
+ SCRIPT_METHOD(SaveVariable, AGSWaves::SaveVariable);
+ SCRIPT_METHOD(ReadVariable, AGSWaves::ReadVariable);
+ SCRIPT_METHOD(GameDoOnceOnly, AGSWaves::GameDoOnceOnly);
+ SCRIPT_METHOD(SetGDState, AGSWaves::SetGDState);
+ SCRIPT_METHOD(GetGDState, AGSWaves::GetGDState);
+ SCRIPT_METHOD(ResetAllGD, AGSWaves::ResetAllGD);
+ SCRIPT_METHOD(SpriteSkew, AGSWaves::SpriteSkew);
+ SCRIPT_METHOD(FireUpdate, AGSWaves::FireUpdate);
+ SCRIPT_METHOD(WindUpdate, AGSWaves::WindUpdate);
+ SCRIPT_METHOD(SetWindValues, AGSWaves::SetWindValues);
+ SCRIPT_METHOD(ReturnWidth, AGSWaves::ReturnWidth);
+ SCRIPT_METHOD(ReturnHeight, AGSWaves::ReturnHeight);
+ SCRIPT_METHOD(ReturnNewHeight, AGSWaves::ReturnNewHeight);
+ SCRIPT_METHOD(ReturnNewWidth, AGSWaves::ReturnNewWidth);
+ SCRIPT_METHOD(Warper, AGSWaves::Warper);
+ SCRIPT_METHOD(SetWarper, AGSWaves::SetWarper);
+ SCRIPT_METHOD(RainUpdate, AGSWaves::RainUpdate);
+ SCRIPT_METHOD(BlendTwoSprites, AGSWaves::BlendTwoSprites);
+ SCRIPT_METHOD(Blend, AGSWaves::Blend);
+ SCRIPT_METHOD(Dissolve, AGSWaves::Dissolve);
+ SCRIPT_METHOD(ReverseTransparency, AGSWaves::ReverseTransparency);
+ SCRIPT_METHOD(NoiseCreator, AGSWaves::NoiseCreator);
+ SCRIPT_METHOD(TintProper, AGSWaves::TintProper);
+ SCRIPT_METHOD(GetWalkbehindBaserine, AGSWaves::GetWalkbehindBaserine);
+ SCRIPT_METHOD(SetWalkbehindBaserine, AGSWaves::SetWalkbehindBaserine);
}
void AGSWaves::DrawScreenEffect(ScriptMethodParams ¶ms) {
diff --git a/engines/ags/plugins/ags_waves/ags_waves.h b/engines/ags/plugins/ags_waves/ags_waves.h
index 0e930a982f..9a0170838e 100644
--- a/engines/ags/plugins/ags_waves/ags_waves.h
+++ b/engines/ags/plugins/ags_waves/ags_waves.h
@@ -23,18 +23,14 @@
#ifndef AGS_PLUGINS_AGS_WAVES_AGS_WAVES_H
#define AGS_PLUGINS_AGS_WAVES_AGS_WAVES_H
-#include "ags/plugins/plugin_base.h"
+#include "ags/plugins/ags_plugin.h"
namespace AGS3 {
namespace Plugins {
namespace AGSWaves {
class AGSWaves : public PluginBase {
-private:
- IAGSEngine *_engine;
- const char *AGS_GetPluginName();
- void AGS_EngineStartup(IAGSEngine *engine) override;
-
+ SCRIPT_HASH(AGSWaves)
private:
void DrawScreenEffect(ScriptMethodParams ¶ms);
void SFX_Play(ScriptMethodParams ¶ms);
@@ -87,7 +83,11 @@ private:
void GetWalkbehindBaserine(ScriptMethodParams ¶ms);
void SetWalkbehindBaserine(ScriptMethodParams ¶ms);
public:
- AGSWaves();
+ AGSWaves() : PluginBase() {}
+ virtual ~AGSWaves() {}
+
+ const char *AGS_GetPluginName() override;
+ void AGS_EngineStartup(IAGSEngine *engine) override;
};
} // namespace AGSWaves
diff --git a/engines/ags/plugins/plugin_base.cpp b/engines/ags/plugins/plugin_base.cpp
index c86f337fe5..f5336009c3 100644
--- a/engines/ags/plugins/plugin_base.cpp
+++ b/engines/ags/plugins/plugin_base.cpp
@@ -22,7 +22,6 @@
#include "ags/lib/allegro.h"
#include "ags/plugins/plugin_base.h"
-/*
#include "ags/plugins/ags_agi/ags_agi.h"
#include "ags/plugins/ags_blend/ags_blend.h"
#include "ags/plugins/ags_clipboard/ags_clipboard.h"
@@ -44,7 +43,6 @@
#include "ags/plugins/ags_tcp_ip/ags_tcp_ip.h"
#include "ags/plugins/ags_wadjet_util/ags_wadjet_util.h"
#include "ags/plugins/ags_waves/ags_waves.h"
-*/
#include "ags/ags.h"
#include "ags/detection.h"
#include "common/str.h"
@@ -64,7 +62,7 @@ Plugins::PluginBase *pluginOpen(const char *filename) {
break;
}
}
-/*
+
if (fname.equalsIgnoreCase("ags_tcp_ip"))
return new AGSTcpIp::AGSTcpIp();
@@ -132,7 +130,7 @@ Plugins::PluginBase *pluginOpen(const char *filename) {
if (fname.equalsIgnoreCase("agswaves"))
return new AGSWaves::AGSWaves();
-*/
+
debug("Plugin '%s' is not yet supported", fname.c_str());
return nullptr;
}
Commit: 2b719124d32144024422dfbbc45f9baaf81d3088
https://github.com/scummvm/scummvm/commit/2b719124d32144024422dfbbc45f9baaf81d3088
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2021-07-18T17:07:02-07:00
Commit Message:
AGS: Move separate state structure into AGSCreditz
Changed paths:
engines/ags/plugins/ags_creditz/ags_creditz.cpp
engines/ags/plugins/ags_creditz/ags_creditz.h
engines/ags/plugins/ags_creditz/ags_creditz1.cpp
engines/ags/plugins/ags_creditz/ags_creditz2.cpp
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz.cpp b/engines/ags/plugins/ags_creditz/ags_creditz.cpp
index 36bdeab6dd..8e14667894 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz.cpp
+++ b/engines/ags/plugins/ags_creditz/ags_creditz.cpp
@@ -27,114 +27,105 @@ namespace AGS3 {
namespace Plugins {
namespace AGSCreditz {
-AGSCreditz::AGSCreditz() : PluginBase(), Drawing() {
- _state = new State();
- _engine = nullptr;
-}
-
-AGSCreditz::~AGSCreditz() {
- delete _state;
-}
-
void AGSCreditz::draw() {
int endPoint;
- if (_state->_creditsRunning) {
+ if (_creditsRunning) {
_engine->PollSystem();
- if (!_state->_staticCredits) {
+ if (!_staticCredits) {
// Scrolling credits
- if (_state->_seqSettings[_state->_creditSequence].automatic == 1)
- endPoint = 0 - _state->_calculatedSequenceHeight;
+ if (_seqSettings[_creditSequence].automatic == 1)
+ endPoint = 0 - _calculatedSequenceHeight;
else
- endPoint = _state->_seqSettings[_state->_creditSequence].endpoint;
+ endPoint = _seqSettings[_creditSequence].endpoint;
- if (_state->_yPos >= endPoint) {
+ if (_yPos >= endPoint) {
doCredits();
} else {
- if (_state->_seqSettings[_state->_creditSequence].endwait > 0 && _state->_timer <= _state->_seqSettings[_state->_creditSequence].endwait) {
- _state->_paused = true;
+ if (_seqSettings[_creditSequence].endwait > 0 && _timer <= _seqSettings[_creditSequence].endwait) {
+ _paused = true;
doCredits();
- _state->_timer++;
+ _timer++;
return;
} else {
- _state->_paused = false;
- _state->_timer = 0;
- _state->_creditsRunning = false;
- _state->_seqSettings[_state->_creditSequence].finished = true;
+ _paused = false;
+ _timer = 0;
+ _creditsRunning = false;
+ _seqSettings[_creditSequence].finished = true;
}
}
- _engine->MarkRegionDirty(0, 0, _state->_screenWidth, _state->_screenHeight);
+ _engine->MarkRegionDirty(0, 0, _screenWidth, _screenHeight);
} else {
// credits
- if (!_state->_singleStatic.bool_) {
- if (_state->_currentStatic < (int)_state->_stCredits[_state->_creditSequence].size()) {
- if (_state->_stCredits[_state->_creditSequence][_state->_currentStatic].pause > 0) {
+ if (!_singleStatic.bool_) {
+ if (_currentStatic < (int)_stCredits[_creditSequence].size()) {
+ if (_stCredits[_creditSequence][_currentStatic].pause > 0) {
// Pause
- if (_state->_timer <= _state->_stCredits[_state->_creditSequence][_state->_currentStatic].pause) {
- _state->_timer++;
+ if (_timer <= _stCredits[_creditSequence][_currentStatic].pause) {
+ _timer++;
} else {
- _state->_timer = 0;
- _state->_currentStatic++;
+ _timer = 0;
+ _currentStatic++;
}
} else {
- if (_state->_stCredits[_state->_creditSequence][_state->_currentStatic].image) {
+ if (_stCredits[_creditSequence][_currentStatic].image) {
// Image
- if (_state->_timer <= _state->_stCredits[_state->_creditSequence][_state->_currentStatic].image_time) {
- drawCredit(_state->_creditSequence, _state->_currentStatic);
- _state->_timer++;
+ if (_timer <= _stCredits[_creditSequence][_currentStatic].image_time) {
+ drawCredit(_creditSequence, _currentStatic);
+ _timer++;
} else {
- _state->_timer = 0;
- _state->_currentStatic++;
- if (_state->_stCredits[_state->_creditSequence][_state->_currentStatic].pause <= 0 &&
- _state->_currentStatic< (int)_state->_stCredits[_state->_creditSequence].size())
- drawCredit(_state->_creditSequence, _state->_currentStatic);
+ _timer = 0;
+ _currentStatic++;
+ if (_stCredits[_creditSequence][_currentStatic].pause <= 0 &&
+ _currentStatic< (int)_stCredits[_creditSequence].size())
+ drawCredit(_creditSequence, _currentStatic);
else
return;
}
} else {
// Text
- if (_state->_timer <= (_state->_stSeqSettings[_state->_creditSequence].speed *
- ((int)_state->_stCredits[_state->_creditSequence][_state->_currentStatic].title.size() +
- (int)_state->_stCredits[_state->_creditSequence][_state->_currentStatic].credit.size()))) {
- drawCredit(_state->_creditSequence, _state->_currentStatic);
- _state->_timer++;
+ if (_timer <= (_stSeqSettings[_creditSequence].speed *
+ ((int)_stCredits[_creditSequence][_currentStatic].title.size() +
+ (int)_stCredits[_creditSequence][_currentStatic].credit.size()))) {
+ drawCredit(_creditSequence, _currentStatic);
+ _timer++;
} else {
- _state->_timer = 0;
- _state->_currentStatic++;
- if (_state->_stCredits[_state->_creditSequence][_state->_currentStatic].pause <= 0 &&
- (int)_state->_currentStatic<= (int)_state->_stCredits[_state->_creditSequence].size())
- drawCredit(_state->_creditSequence, _state->_currentStatic);
+ _timer = 0;
+ _currentStatic++;
+ if (_stCredits[_creditSequence][_currentStatic].pause <= 0 &&
+ (int)_currentStatic<= (int)_stCredits[_creditSequence].size())
+ drawCredit(_creditSequence, _currentStatic);
else
return;
}
}
}
} else {
- _state->_stSeqSettings[_state->_creditSequence].finished = true;
- _state->_creditsRunning = false;
- _state->_creditSequence = -1;
- _state->_timer = 0;
- _state->_currentStatic= 1;
+ _stSeqSettings[_creditSequence].finished = true;
+ _creditsRunning = false;
+ _creditSequence = -1;
+ _timer = 0;
+ _currentStatic= 1;
return;
}
} else {
// Single Static
- if (_state->_timer <= _state->_singleStatic.time) {
- if (_state->_singleStatic.style == 0)
- drawCredit(_state->_creditSequence, _state->_singleStatic.id);
- else if (_state->_singleStatic.style == 1)
- drawStEffects(_state->_creditSequence, _state->_singleStatic.id, _state->_singleStatic.style);
+ if (_timer <= _singleStatic.time) {
+ if (_singleStatic.style == 0)
+ drawCredit(_creditSequence, _singleStatic.id);
+ else if (_singleStatic.style == 1)
+ drawStEffects(_creditSequence, _singleStatic.id, _singleStatic.style);
- _state->_timer++;
+ _timer++;
} else {
- _state->_timer = 0;
- _state->_singleStatic.bool_ = false;
- _state->_creditsRunning = false;
- _state->_staticCredits = false;
- _state->_stSeqSettings[_state->_creditSequence].finished = true;
- _state->_creditSequence = -1;
+ _timer = 0;
+ _singleStatic.bool_ = false;
+ _creditsRunning = false;
+ _staticCredits = false;
+ _stSeqSettings[_creditSequence].finished = true;
+ _creditSequence = -1;
}
}
}
@@ -153,15 +144,15 @@ int AGSCreditz::drawCredit(int sequence, int credit) {
_engine->GetScreenDimensions(&scrn_width, &scrn_height, &coldepth);
- if (!_state->_staticCredits) {
+ if (!_staticCredits) {
// Scrolling Credits
- if ((_state->_yPos + _state->_sequenceHeight) > scrn_height)
+ if ((_yPos + _sequenceHeight) > scrn_height)
return 0;
- if (_state->_credits[sequence][credit]._image) {
- slot = _state->_credits[sequence][credit]._fontSlot;
- sprite_height = _state->_credits[sequence][credit]._colorHeight;
- x_pos = _state->_credits[sequence][credit]._x;
+ if (_credits[sequence][credit]._image) {
+ slot = _credits[sequence][credit]._fontSlot;
+ sprite_height = _credits[sequence][credit]._colorHeight;
+ x_pos = _credits[sequence][credit]._x;
if (x_pos < 0) {
sprite_width = _engine->GetSpriteWidth(slot);
@@ -178,13 +169,13 @@ int AGSCreditz::drawCredit(int sequence, int credit) {
korkeus = sprite_height;
sprite = _engine->GetSpriteGraphic(slot);
- _engine->BlitBitmap(x_pos, _state->_yPos + _state->_sequenceHeight, sprite, 1);
+ _engine->BlitBitmap(x_pos, _yPos + _sequenceHeight, sprite, 1);
} else {
- font = _state->_credits[sequence][credit]._fontSlot;
- color = _state->_credits[sequence][credit]._colorHeight;
- text = _state->_credits[sequence][credit]._text;
- x_pos = _state->_credits[sequence][credit]._x;
+ font = _credits[sequence][credit]._fontSlot;
+ color = _credits[sequence][credit]._colorHeight;
+ text = _credits[sequence][credit]._text;
+ x_pos = _credits[sequence][credit]._x;
if (!text.empty()) {
_engine->GetTextExtent(font, text.c_str(), &leveys, &korkeus);
@@ -198,15 +189,15 @@ int AGSCreditz::drawCredit(int sequence, int credit) {
if (text.contains('<')) {
specialEffect(sequence, credit, text, font, color, x_pos);
} else {
- if (_state->_credits[sequence][credit]._outline) {
+ if (_credits[sequence][credit]._outline) {
// Outline
- _engine->DrawText(x_pos - 1, _state->_yPos + _state->_sequenceHeight, font, 16, text.c_str());
- _engine->DrawText(x_pos + 1, _state->_yPos + _state->_sequenceHeight, font, 16, text.c_str());
- _engine->DrawText(x_pos, _state->_yPos + _state->_sequenceHeight - 1, font, 16, text.c_str());
- _engine->DrawText(x_pos, _state->_yPos + _state->_sequenceHeight + 1, font, 16, text.c_str());
+ _engine->DrawText(x_pos - 1, _yPos + _sequenceHeight, font, 16, text.c_str());
+ _engine->DrawText(x_pos + 1, _yPos + _sequenceHeight, font, 16, text.c_str());
+ _engine->DrawText(x_pos, _yPos + _sequenceHeight - 1, font, 16, text.c_str());
+ _engine->DrawText(x_pos, _yPos + _sequenceHeight + 1, font, 16, text.c_str());
}
- _engine->DrawText(x_pos, _state->_yPos + _state->_sequenceHeight, font, color, text.c_str());
+ _engine->DrawText(x_pos, _yPos + _sequenceHeight, font, color, text.c_str());
}
}
}
@@ -214,10 +205,10 @@ int AGSCreditz::drawCredit(int sequence, int credit) {
result = korkeus;
} else {
- if (_state->_stCredits[sequence][credit].image) {
- x_pos = _state->_stCredits[sequence][credit].x;
- y_posit = _state->_stCredits[sequence][credit].y;
- font = _state->_stCredits[sequence][credit].image_slot;
+ if (_stCredits[sequence][credit].image) {
+ x_pos = _stCredits[sequence][credit].x;
+ y_posit = _stCredits[sequence][credit].y;
+ font = _stCredits[sequence][credit].image_slot;
sprite = _engine->GetSpriteGraphic(font);
_engine->GetBitmapDimensions(sprite, &leveys, &korkeus, &coldepth);
@@ -235,11 +226,11 @@ int AGSCreditz::drawCredit(int sequence, int credit) {
result = 0;
} else {
// Title
- font = _state->_stCredits[sequence][credit].title_font;
- color = _state->_stCredits[sequence][credit].title_color;
- text = _state->_stCredits[sequence][credit].title;
- x_pos = _state->_stCredits[sequence][credit].title_x;
- y_posit = _state->_stCredits[sequence][credit].title_y;
+ font = _stCredits[sequence][credit].title_font;
+ color = _stCredits[sequence][credit].title_color;
+ text = _stCredits[sequence][credit].title;
+ x_pos = _stCredits[sequence][credit].title_x;
+ y_posit = _stCredits[sequence][credit].title_y;
if (!text.empty()) {
_engine->GetTextExtent(font, text.c_str(), &leveys, &korkeus);
@@ -253,7 +244,7 @@ int AGSCreditz::drawCredit(int sequence, int credit) {
else
y_posit = VGACheck(y_posit);
- if (_state->_stCredits[sequence][credit].title_outline) {
+ if (_stCredits[sequence][credit].title_outline) {
_engine->DrawText(x_pos - 1, y_posit, font, 16, text.c_str());
_engine->DrawText(x_pos + 1, y_posit, font, 16, text.c_str());
_engine->DrawText(x_pos, y_posit - 1, font, 16, text.c_str());
@@ -265,11 +256,11 @@ int AGSCreditz::drawCredit(int sequence, int credit) {
}
// Credit
- font = _state->_stCredits[sequence][credit].font;
- color = _state->_stCredits[sequence][credit].color;
- text = _state->_stCredits[sequence][credit].credit;
- x_pos = _state->_stCredits[sequence][credit].x;
- y_posit = _state->_stCredits[sequence][credit].y;
+ font = _stCredits[sequence][credit].font;
+ color = _stCredits[sequence][credit].color;
+ text = _stCredits[sequence][credit].credit;
+ x_pos = _stCredits[sequence][credit].x;
+ y_posit = _stCredits[sequence][credit].y;
if (!text.empty()) {
_engine->GetTextExtent(font, text.c_str(), &leveys, &korkeus);
@@ -284,7 +275,7 @@ int AGSCreditz::drawCredit(int sequence, int credit) {
else
y_posit = VGACheck(y_posit);
- if (_state->_stCredits[sequence][credit].outline) {
+ if (_stCredits[sequence][credit].outline) {
_engine->DrawText(x_pos - 1, y_posit, font, 16, text.c_str());
_engine->DrawText(x_pos + 1, y_posit, font, 16, text.c_str());
_engine->DrawText(x_pos, y_posit - 1, font, 16, text.c_str());
@@ -312,7 +303,7 @@ int AGSCreditz::drawCredit(int sequence, int credit) {
else
x_pos = VGACheck(x_pos);
- if (_state->_stCredits[sequence][credit].outline) {
+ if (_stCredits[sequence][credit].outline) {
_engine->DrawText(x_pos - 1, y_posit + others, font, 16, text.c_str());
_engine->DrawText(x_pos + 1, y_posit + others, font, 16, text.c_str());
_engine->DrawText(x_pos, y_posit + others - 1, font, 16, text.c_str());
@@ -321,7 +312,7 @@ int AGSCreditz::drawCredit(int sequence, int credit) {
_engine->DrawText(x_pos, y_posit + others, font, color, text.c_str());
_engine->MarkRegionDirty(x_pos, y_posit + others, x_pos + leveys, y_posit + others + korkeus + 15);
others += korkeus;
- x_pos = _state->_stCredits[sequence][credit].x;
+ x_pos = _stCredits[sequence][credit].x;
line++;
}
}
@@ -339,35 +330,35 @@ void AGSCreditz::doCredits() {
int32 increment, dum;
current_line = 1;
- _state->_sequenceHeight = 0;
+ _sequenceHeight = 0;
- while (current_line < (int)_state->_credits[_state->_creditSequence].size()) {
- if (_state->_credits[_state->_creditSequence][current_line]._isSet) {
- if (_state->_credits[_state->_creditSequence][current_line]._image) {
- increment = _engine->GetSpriteHeight(_state->_credits[_state->_creditSequence][current_line]._fontSlot);
+ while (current_line < (int)_credits[_creditSequence].size()) {
+ if (_credits[_creditSequence][current_line]._isSet) {
+ if (_credits[_creditSequence][current_line]._image) {
+ increment = _engine->GetSpriteHeight(_credits[_creditSequence][current_line]._fontSlot);
- if ((_state->_yPos + _state->_sequenceHeight + increment) <= 0) {
- if (_state->_credits[_state->_creditSequence][current_line]._colorHeight >= 0)
- increment = VGACheck(_state->_credits[_state->_creditSequence][current_line]._colorHeight);
+ if ((_yPos + _sequenceHeight + increment) <= 0) {
+ if (_credits[_creditSequence][current_line]._colorHeight >= 0)
+ increment = VGACheck(_credits[_creditSequence][current_line]._colorHeight);
}
} else {
- _engine->GetTextExtent(_state->_credits[_state->_creditSequence][current_line]._fontSlot,
- _state->_credits[_state->_creditSequence][current_line]._text.c_str(), &dum, &increment);
+ _engine->GetTextExtent(_credits[_creditSequence][current_line]._fontSlot,
+ _credits[_creditSequence][current_line]._text.c_str(), &dum, &increment);
}
- if ((_state->_yPos + _state->_sequenceHeight + increment) > 0)
- increment = drawCredit(_state->_creditSequence, current_line);
+ if ((_yPos + _sequenceHeight + increment) > 0)
+ increment = drawCredit(_creditSequence, current_line);
} else {
- increment = VGACheck(_state->_emptyLineHeight);
+ increment = VGACheck(_emptyLineHeight);
}
- _state->_sequenceHeight += increment;
+ _sequenceHeight += increment;
current_line++;
}
- if (!_state->_paused)
- speeder(_state->_creditSequence);
+ if (!_paused)
+ speeder(_creditSequence);
}
int AGSCreditz::countLines(const Common::String &text) {
@@ -424,22 +415,22 @@ void AGSCreditz::specialEffect(int sequence, int credit, const Common::String &t
_engine->GetTextExtent(font, creditt[2].c_str(), &rightside_width, &dum);
- if (_state->_credits[sequence][credit]._outline) {
- _engine->DrawText(x_pos - 1, _state->_yPos + _state->_sequenceHeight, font, color, creditt[0].c_str());
- _engine->DrawText(x_pos + 1, _state->_yPos + _state->_sequenceHeight, font, color, creditt[0].c_str());
- _engine->DrawText(x_pos, _state->_yPos + _state->_sequenceHeight - 1, font, color, creditt[0].c_str());
- _engine->DrawText(x_pos, _state->_yPos + _state->_sequenceHeight + 1, font, color, creditt[0].c_str());
+ if (_credits[sequence][credit]._outline) {
+ _engine->DrawText(x_pos - 1, _yPos + _sequenceHeight, font, color, creditt[0].c_str());
+ _engine->DrawText(x_pos + 1, _yPos + _sequenceHeight, font, color, creditt[0].c_str());
+ _engine->DrawText(x_pos, _yPos + _sequenceHeight - 1, font, color, creditt[0].c_str());
+ _engine->DrawText(x_pos, _yPos + _sequenceHeight + 1, font, color, creditt[0].c_str());
}
- _engine->DrawText(x_pos, _state->_yPos + _state->_sequenceHeight, font, color, creditt[0].c_str());
+ _engine->DrawText(x_pos, _yPos + _sequenceHeight, font, color, creditt[0].c_str());
- if (_state->_credits[sequence][credit]._outline) {
- _engine->DrawText(scrn_width - (x_pos + rightside_width) - 1, _state->_yPos + _state->_sequenceHeight, font, color, creditt[2].c_str());
- _engine->DrawText(scrn_width - (x_pos + rightside_width) + 1, _state->_yPos + _state->_sequenceHeight, font, color, creditt[2].c_str());
- _engine->DrawText(scrn_width - (x_pos + rightside_width), _state->_yPos + _state->_sequenceHeight - 1, font, color, creditt[2].c_str());
- _engine->DrawText(scrn_width - (x_pos + rightside_width), _state->_yPos + _state->_sequenceHeight + 1, font, color, creditt[2].c_str());
+ if (_credits[sequence][credit]._outline) {
+ _engine->DrawText(scrn_width - (x_pos + rightside_width) - 1, _yPos + _sequenceHeight, font, color, creditt[2].c_str());
+ _engine->DrawText(scrn_width - (x_pos + rightside_width) + 1, _yPos + _sequenceHeight, font, color, creditt[2].c_str());
+ _engine->DrawText(scrn_width - (x_pos + rightside_width), _yPos + _sequenceHeight - 1, font, color, creditt[2].c_str());
+ _engine->DrawText(scrn_width - (x_pos + rightside_width), _yPos + _sequenceHeight + 1, font, color, creditt[2].c_str());
}
- _engine->DrawText(scrn_width - (x_pos + rightside_width), _state->_yPos + _state->_sequenceHeight, font, color, creditt[2].c_str());
+ _engine->DrawText(scrn_width - (x_pos + rightside_width), _yPos + _sequenceHeight, font, color, creditt[2].c_str());
} else if (text.contains("<.>")) {
if (x_pos < 0)
x_pos = 0;
@@ -452,22 +443,22 @@ void AGSCreditz::specialEffect(int sequence, int credit, const Common::String &t
_engine->GetTextExtent(font, creditt[2].c_str(), &rightside_width, &dum);
_engine->GetTextExtent(font, creditt[0].c_str(), &leftside_width, &dum);
- if (_state->_credits[sequence][credit]._outline) {
- _engine->DrawText(x_pos - 1, _state->_yPos + _state->_sequenceHeight, font, color, creditt[0].c_str());
- _engine->DrawText(x_pos + 1, _state->_yPos + _state->_sequenceHeight, font, color, creditt[0].c_str());
- _engine->DrawText(x_pos, _state->_yPos + _state->_sequenceHeight - 1, font, color, creditt[0].c_str());
- _engine->DrawText(x_pos, _state->_yPos + _state->_sequenceHeight + 1, font, color, creditt[0].c_str());
+ if (_credits[sequence][credit]._outline) {
+ _engine->DrawText(x_pos - 1, _yPos + _sequenceHeight, font, color, creditt[0].c_str());
+ _engine->DrawText(x_pos + 1, _yPos + _sequenceHeight, font, color, creditt[0].c_str());
+ _engine->DrawText(x_pos, _yPos + _sequenceHeight - 1, font, color, creditt[0].c_str());
+ _engine->DrawText(x_pos, _yPos + _sequenceHeight + 1, font, color, creditt[0].c_str());
}
- _engine->DrawText(x_pos, _state->_yPos + _state->_sequenceHeight, font, color, creditt[0].c_str());
+ _engine->DrawText(x_pos, _yPos + _sequenceHeight, font, color, creditt[0].c_str());
- if (_state->_credits[sequence][credit]._outline) {
- _engine->DrawText(scrn_width - (x_pos + rightside_width) - 1, _state->_yPos + _state->_sequenceHeight, font, color, creditt[2].c_str());
- _engine->DrawText(scrn_width - (x_pos + rightside_width) + 1, _state->_yPos + _state->_sequenceHeight, font, color, creditt[2].c_str());
- _engine->DrawText(scrn_width - (x_pos + rightside_width), _state->_yPos + _state->_sequenceHeight - 1, font, color, creditt[2].c_str());
- _engine->DrawText(scrn_width - (x_pos + rightside_width), _state->_yPos + _state->_sequenceHeight + 1, font, color, creditt[2].c_str());
+ if (_credits[sequence][credit]._outline) {
+ _engine->DrawText(scrn_width - (x_pos + rightside_width) - 1, _yPos + _sequenceHeight, font, color, creditt[2].c_str());
+ _engine->DrawText(scrn_width - (x_pos + rightside_width) + 1, _yPos + _sequenceHeight, font, color, creditt[2].c_str());
+ _engine->DrawText(scrn_width - (x_pos + rightside_width), _yPos + _sequenceHeight - 1, font, color, creditt[2].c_str());
+ _engine->DrawText(scrn_width - (x_pos + rightside_width), _yPos + _sequenceHeight + 1, font, color, creditt[2].c_str());
}
- _engine->DrawText(scrn_width - (x_pos + rightside_width), _state->_yPos + _state->_sequenceHeight, font, color, creditt[2].c_str());
+ _engine->DrawText(scrn_width - (x_pos + rightside_width), _yPos + _sequenceHeight, font, color, creditt[2].c_str());
_engine->GetTextExtent(font, " .", &dotwidth, &dum);
space = scrn_width - (x_pos + leftside_width + x_pos + rightside_width);
@@ -479,13 +470,13 @@ void AGSCreditz::specialEffect(int sequence, int credit, const Common::String &t
dotpos++;
}
- if (_state->_credits[sequence][credit]._outline) {
- _engine->DrawText(x_pos + leftside_width - 1, _state->_yPos + _state->_sequenceHeight, font, color, dots.c_str());
- _engine->DrawText(x_pos + leftside_width + 1, _state->_yPos + _state->_sequenceHeight, font, color, dots.c_str());
- _engine->DrawText(x_pos + leftside_width, _state->_yPos + _state->_sequenceHeight - 1, font, color, dots.c_str());
- _engine->DrawText(x_pos + leftside_width, _state->_yPos + _state->_sequenceHeight + 1, font, color, dots.c_str());
+ if (_credits[sequence][credit]._outline) {
+ _engine->DrawText(x_pos + leftside_width - 1, _yPos + _sequenceHeight, font, color, dots.c_str());
+ _engine->DrawText(x_pos + leftside_width + 1, _yPos + _sequenceHeight, font, color, dots.c_str());
+ _engine->DrawText(x_pos + leftside_width, _yPos + _sequenceHeight - 1, font, color, dots.c_str());
+ _engine->DrawText(x_pos + leftside_width, _yPos + _sequenceHeight + 1, font, color, dots.c_str());
}
- _engine->DrawText(x_pos + leftside_width, _state->_yPos + _state->_sequenceHeight, font, color, dots.c_str());
+ _engine->DrawText(x_pos + leftside_width, _yPos + _sequenceHeight, font, color, dots.c_str());
} else if (text.contains("<#>")) {
if (x_pos < 0)
x_pos = 0;
@@ -498,21 +489,21 @@ void AGSCreditz::specialEffect(int sequence, int credit, const Common::String &t
_engine->GetTextExtent(font, creditt[2].c_str(), &rightside_width, &dum);
_engine->GetTextExtent(font, creditt[0].c_str(), &leftside_width, &dum);
- if (_state->_credits[sequence][credit]._outline) {
- _engine->DrawText(scrn_width / 2 - x_pos / 2 - leftside_width - 1, _state->_yPos + _state->_sequenceHeight, font, color, creditt[0].c_str());
- _engine->DrawText(scrn_width / 2 - x_pos / 2 - leftside_width + 1, _state->_yPos + _state->_sequenceHeight, font, color, creditt[0].c_str());
- _engine->DrawText(scrn_width / 2 - x_pos / 2 - leftside_width, _state->_yPos + _state->_sequenceHeight - 1, font, color, creditt[0].c_str());
- _engine->DrawText(scrn_width / 2 - x_pos / 2 - leftside_width, _state->_yPos + _state->_sequenceHeight + 1, font, color, creditt[0].c_str());
+ if (_credits[sequence][credit]._outline) {
+ _engine->DrawText(scrn_width / 2 - x_pos / 2 - leftside_width - 1, _yPos + _sequenceHeight, font, color, creditt[0].c_str());
+ _engine->DrawText(scrn_width / 2 - x_pos / 2 - leftside_width + 1, _yPos + _sequenceHeight, font, color, creditt[0].c_str());
+ _engine->DrawText(scrn_width / 2 - x_pos / 2 - leftside_width, _yPos + _sequenceHeight - 1, font, color, creditt[0].c_str());
+ _engine->DrawText(scrn_width / 2 - x_pos / 2 - leftside_width, _yPos + _sequenceHeight + 1, font, color, creditt[0].c_str());
}
- _engine->DrawText(scrn_width / 2 - x_pos / 2 - leftside_width, _state->_yPos + _state->_sequenceHeight, font, color, creditt[0].c_str());
+ _engine->DrawText(scrn_width / 2 - x_pos / 2 - leftside_width, _yPos + _sequenceHeight, font, color, creditt[0].c_str());
- if (_state->_credits[sequence][credit]._outline) {
- _engine->DrawText(scrn_width / 2 + x_pos / 2 - 1, _state->_yPos + _state->_sequenceHeight, font, color, creditt[2].c_str());
- _engine->DrawText(scrn_width / 2 + x_pos / 2 + 1, _state->_yPos + _state->_sequenceHeight, font, color, creditt[2].c_str());
- _engine->DrawText(scrn_width / 2 + x_pos / 2, _state->_yPos + _state->_sequenceHeight - 1, font, color, creditt[2].c_str());
- _engine->DrawText(scrn_width / 2 + x_pos / 2, _state->_yPos + _state->_sequenceHeight + 1, font, color, creditt[2].c_str());
+ if (_credits[sequence][credit]._outline) {
+ _engine->DrawText(scrn_width / 2 + x_pos / 2 - 1, _yPos + _sequenceHeight, font, color, creditt[2].c_str());
+ _engine->DrawText(scrn_width / 2 + x_pos / 2 + 1, _yPos + _sequenceHeight, font, color, creditt[2].c_str());
+ _engine->DrawText(scrn_width / 2 + x_pos / 2, _yPos + _sequenceHeight - 1, font, color, creditt[2].c_str());
+ _engine->DrawText(scrn_width / 2 + x_pos / 2, _yPos + _sequenceHeight + 1, font, color, creditt[2].c_str());
}
- _engine->DrawText(scrn_width / 2 + x_pos / 2, _state->_yPos + _state->_sequenceHeight, font, color, creditt[2].c_str());
+ _engine->DrawText(scrn_width / 2 + x_pos / 2, _yPos + _sequenceHeight, font, color, creditt[2].c_str());
}
}
@@ -524,26 +515,26 @@ void AGSCreditz::drawStEffects(int sequence, int id, int style) {
int font, color, set1, set2;
int32 x_pos, y_posit, scrn_width, leveys, scrn_height, korkeus, coldepth;
- teksti = _state->_stCredits[sequence][id].credit;
- font = _state->_stCredits[sequence][id].font;
- color = _state->_stCredits[sequence][id].color;
- x_pos = _state->_stCredits[sequence][id].x;
- y_posit = _state->_stCredits[sequence][id].y;
- set1 = _state->_singleStatic.settings1;
- set2 = _state->_singleStatic.settings2;
+ teksti = _stCredits[sequence][id].credit;
+ font = _stCredits[sequence][id].font;
+ color = _stCredits[sequence][id].color;
+ x_pos = _stCredits[sequence][id].x;
+ y_posit = _stCredits[sequence][id].y;
+ set1 = _singleStatic.settings1;
+ set2 = _singleStatic.settings2;
_engine->GetScreenDimensions(&scrn_width, &scrn_height, &coldepth);
_engine->GetTextExtent(font, teksti.c_str(), &leveys, &korkeus);
if (style == 1) {
- if (set2 >= 0 && _state->_numChars < (int)teksti.size() && _state->_timer2 == 0) {
+ if (set2 >= 0 && _numChars < (int)teksti.size() && _timer2 == 0) {
(*_playSound)(set2);
}
- if (_state->_timer2 <= set1) {
+ if (_timer2 <= set1) {
thischar = 0;
- if (thischar <= _state->_numChars && _state->_numChars <= (int)teksti.size()) {
- for (thischar = 0; thischar < _state->_numChars; ++thischar)
+ if (thischar <= _numChars && _numChars <= (int)teksti.size()) {
+ for (thischar = 0; thischar < _numChars; ++thischar)
teksti2 = teksti2 + teksti[thischar];
text = teksti2;
} else {
@@ -560,26 +551,26 @@ void AGSCreditz::drawStEffects(int sequence, int id, int style) {
y_posit = VGACheck(y_posit);
_engine->DrawText(x_pos, y_posit, font, color, text.c_str());
- _state->_timer2++;
- x_pos = _state->_stCredits[sequence][id].x;
- y_posit = _state->_stCredits[sequence][id].y;
+ _timer2++;
+ x_pos = _stCredits[sequence][id].x;
+ y_posit = _stCredits[sequence][id].y;
} else {
- _state->_numChars++;
+ _numChars++;
thischar = 0;
- _state->_timer2 = 0;
+ _timer2 = 0;
drawStEffects(sequence, id, style);
}
}
}
void AGSCreditz::speeder(int sequence) {
- int speed = _state->_seqSettings[sequence].speed;
+ int speed = _seqSettings[sequence].speed;
- if (_state->_speedPoint == speed) {
- _state->_yPos -= VGACheck(1);
- _state->_speedPoint = 0;
+ if (_speedPoint == speed) {
+ _yPos -= VGACheck(1);
+ _speedPoint = 0;
} else {
- _state->_speedPoint++;
+ _speedPoint++;
}
}
@@ -588,28 +579,28 @@ void AGSCreditz::calculateSequenceHeight(int sequence) {
int32 height, creditHeight, dum;
height = 0;
- for (uint currentCredit = 0; currentCredit < _state->_credits[sequence].size();
+ for (uint currentCredit = 0; currentCredit < _credits[sequence].size();
++currentCredit) {
- if (_state->_credits[sequence][currentCredit]._isSet) {
- if (_state->_credits[sequence][currentCredit]._image) {
- if (_state->_credits[sequence][currentCredit]._colorHeight < 0)
- creditHeight = _engine->GetSpriteHeight(_state->_credits[sequence][currentCredit]._fontSlot);
+ if (_credits[sequence][currentCredit]._isSet) {
+ if (_credits[sequence][currentCredit]._image) {
+ if (_credits[sequence][currentCredit]._colorHeight < 0)
+ creditHeight = _engine->GetSpriteHeight(_credits[sequence][currentCredit]._fontSlot);
else
- creditHeight = _state->_credits[sequence][currentCredit]._colorHeight;
+ creditHeight = _credits[sequence][currentCredit]._colorHeight;
} else {
- _engine->GetTextExtent(_state->_credits[sequence][currentCredit]._fontSlot,
- _state->_credits[sequence][currentCredit]._text.c_str(),
+ _engine->GetTextExtent(_credits[sequence][currentCredit]._fontSlot,
+ _credits[sequence][currentCredit]._text.c_str(),
&dum, &creditHeight);
}
height += creditHeight;
} else {
- height += VGACheck(_state->_emptyLineHeight);
+ height += VGACheck(_emptyLineHeight);
}
}
- _state->_calculatedSequenceHeight = height;
+ _calculatedSequenceHeight = height;
}
int AGSCreditz::VGACheck(int value) {
@@ -623,29 +614,29 @@ int AGSCreditz::VGACheck(int value) {
}
void AGSCreditz::startSequence(int sequence) {
- if (!_state->_creditsRunning) {
- _state->_seqSettings[sequence].finished = false;
- _state->_creditsRunning = true;
- _state->_creditSequence = sequence;
+ if (!_creditsRunning) {
+ _seqSettings[sequence].finished = false;
+ _creditsRunning = true;
+ _creditSequence = sequence;
- _engine->GetScreenDimensions(&_state->_screenWidth, &_state->_screenHeight,
- &_state->_screenColorDepth);
+ _engine->GetScreenDimensions(&_screenWidth, &_screenHeight,
+ &_screenColorDepth);
- if (_state->_seqSettings[sequence].automatic) {
+ if (_seqSettings[sequence].automatic) {
calculateSequenceHeight(sequence);
- _state->_yPos = _state->_screenHeight + 1;
+ _yPos = _screenHeight + 1;
} else {
- _state->_yPos = _state->_seqSettings[sequence].startpoint;
+ _yPos = _seqSettings[sequence].startpoint;
}
- _state->_speedPoint = 0;
- _state->_timer = 0;
+ _speedPoint = 0;
+ _timer = 0;
draw();
} else {
- _state->_paused = false;
- _state->_creditsRunning = false;
- _state->_creditSequence = -1;
- _state->_seqSettings[sequence].finished = true;
+ _paused = false;
+ _creditsRunning = false;
+ _creditSequence = -1;
+ _seqSettings[sequence].finished = true;
}
}
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz.h b/engines/ags/plugins/ags_creditz/ags_creditz.h
index 73daf328ef..b5c08a82ed 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz.h
+++ b/engines/ags/plugins/ags_creditz/ags_creditz.h
@@ -94,26 +94,6 @@ struct SingleStatic {
typedef Common::Array<Credit> CreditArray;
typedef Common::Array<StCredit> StCreditArray;
-struct State {
- CreditArray _credits[10];
- StCreditArray _stCredits[10];
- bool _creditsRunning = 0, _paused = 0, _staticCredits = 0;
- int _creditSequence = 0, _yPos = 0, _sequenceHeight = 0, _speedPoint = 0;
- int _calculatedSequenceHeight = 0, _timer = 0, _currentStatic = 0;
- int _numChars = 0, _timer2 = 0;
- int _emptyLineHeight = 10;
- int _strCredit[10];
- SequenceSettings _seqSettings[10];
- StSequenceSettings _stSeqSettings[10];
- SingleStatic _singleStatic;
-
- // Version 1.1 specific
- bool _resolutionFlag = false;
- int32 _screenWidth = 0, _screenHeight = 0, _screenColorDepth = 0;
- int32 _staticScreenWidth = 0;
- bool _staticWidthMatches = false;
-};
-
class AGSCreditz : public PluginBase, public Drawing {
private:
int drawCredit(int sequence, int credit);
@@ -131,8 +111,24 @@ protected:
};
Version _version;
- State *_state;
IntFunction _playSound;
+ CreditArray _credits[10];
+ StCreditArray _stCredits[10];
+ bool _creditsRunning = 0, _paused = 0, _staticCredits = 0;
+ int _creditSequence = 0, _yPos = 0, _sequenceHeight = 0, _speedPoint = 0;
+ int _calculatedSequenceHeight = 0, _timer = 0, _currentStatic = 0;
+ int _numChars = 0, _timer2 = 0;
+ int _emptyLineHeight = 10;
+ int _strCredit[10];
+ SequenceSettings _seqSettings[10];
+ StSequenceSettings _stSeqSettings[10];
+ SingleStatic _singleStatic;
+
+ // Version 1.1 specific
+ bool _resolutionFlag = false;
+ int32 _screenWidth = 0, _screenHeight = 0, _screenColorDepth = 0;
+ int32 _staticScreenWidth = 0;
+ bool _staticWidthMatches = false;
void draw();
void calculateSequenceHeight(int sequence);
@@ -140,8 +136,8 @@ protected:
void startSequence(int sequence);
public:
- AGSCreditz();
- virtual ~AGSCreditz();
+ AGSCreditz() : PluginBase(), Drawing() {}
+ virtual ~AGSCreditz() {}
};
} // namespace AGSCreditz
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz1.cpp b/engines/ags/plugins/ags_creditz/ags_creditz1.cpp
index 5dc24507cb..6f19ca9447 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz1.cpp
+++ b/engines/ags/plugins/ags_creditz/ags_creditz1.cpp
@@ -40,8 +40,8 @@ const char *AGSCreditz1::AGS_GetPluginName() {
void AGSCreditz1::AGS_EngineStartup(IAGSEngine *engine) {
PluginBase::AGS_EngineStartup(engine);
engine->RequestEventHook(AGSE_POSTSCREENDRAW);
- _engine->GetScreenDimensions(&_state->_screenWidth,
- &_state->_screenHeight, &_state->_screenColorDepth);
+ _engine->GetScreenDimensions(&_screenWidth,
+ &_screenHeight, &_screenColorDepth);
SCRIPT_METHOD(SetCredit, AGSCreditz1::SetCredit);
SCRIPT_METHOD(ScrollCredits, AGSCreditz1::ScrollCredits);
@@ -77,16 +77,16 @@ int64 AGSCreditz1::AGS_EngineOnEvent(int event, NumberPtr data) {
void AGSCreditz1::SetCredit(ScriptMethodParams ¶ms) {
PARAMS7(int, ID, string, credit, int, colour, int, font, bool, center, int, xpos, int, generateoutline);
- if (ID >= (int)_state->_credits[0].size())
- _state->_credits[0].resize(ID + 1);
+ if (ID >= (int)_credits[0].size())
+ _credits[0].resize(ID + 1);
if (center) {
int32 creditW, creditH;
_engine->GetTextExtent(font, credit, &creditW, &creditH);
- xpos = (_state->_screenWidth - creditW) / 2;
+ xpos = (_screenWidth - creditW) / 2;
}
- Credit &c = _state->_credits[0][ID];
+ Credit &c = _credits[0][ID];
c._text = credit;
c._fontSlot = font;
c._x = xpos;
@@ -98,22 +98,22 @@ void AGSCreditz1::SetCredit(ScriptMethodParams ¶ms) {
void AGSCreditz1::SetCreditImage(ScriptMethodParams ¶ms) {
PARAMS5(int, ID, int, slot, bool, center, int, xpos, int, pixtonext);
- if (ID >= (int)_state->_credits[0].size())
- _state->_credits[0].resize(ID + 1);
+ if (ID >= (int)_credits[0].size())
+ _credits[0].resize(ID + 1);
BITMAP *gfx = _engine->GetSpriteGraphic(slot);
if (center)
- xpos = (_state->_screenWidth - gfx->w) / 2;
+ xpos = (_screenWidth - gfx->w) / 2;
- _state->_credits[0][ID]._image = true;
- _state->_credits[0][ID]._isSet = true;
- _state->_credits[0][ID]._x = xpos;
- _state->_credits[0][ID]._fontSlot = slot;
+ _credits[0][ID]._image = true;
+ _credits[0][ID]._isSet = true;
+ _credits[0][ID]._x = xpos;
+ _credits[0][ID]._fontSlot = slot;
if (pixtonext != -1) {
- _state->_credits[0][ID]._colorHeight = pixtonext;
+ _credits[0][ID]._colorHeight = pixtonext;
} else {
- _state->_credits[0][ID]._colorHeight = gfx->h;
+ _credits[0][ID]._colorHeight = gfx->h;
}
}
@@ -121,22 +121,22 @@ void AGSCreditz1::ScrollCredits(ScriptMethodParams ¶ms) {
PARAMS7(int, onoff, int, speed, int, fromY, int, toY, int, isautom, int, wait, int, resolution);
if (onoff == 1) {
- _state->_seqSettings[0].speed = speed;
- _state->_seqSettings[0].endwait = wait;
- _state->_seqSettings[0].startpoint = fromY;
- _state->_seqSettings[0].endpoint = toY;
- _state->_seqSettings[0].automatic = isautom;
-
- if (_state->_screenWidth == 320) {
- _state->_resolutionFlag = (resolution != 2) ? 1 : 0;
- } else if (_state->_screenWidth == 640) {
- _state->_resolutionFlag = (resolution != 1) ? 1 : 0;
+ _seqSettings[0].speed = speed;
+ _seqSettings[0].endwait = wait;
+ _seqSettings[0].startpoint = fromY;
+ _seqSettings[0].endpoint = toY;
+ _seqSettings[0].automatic = isautom;
+
+ if (_screenWidth == 320) {
+ _resolutionFlag = (resolution != 2) ? 1 : 0;
+ } else if (_screenWidth == 640) {
+ _resolutionFlag = (resolution != 1) ? 1 : 0;
}
startSequence(0);
} else if (onoff == 0) {
- _state->_creditsRunning = false;
+ _creditsRunning = false;
} else {
_engine->AbortGame("ScrollCredits: OnOff value must be 1 or 0!");
@@ -146,47 +146,47 @@ void AGSCreditz1::ScrollCredits(ScriptMethodParams ¶ms) {
void AGSCreditz1::GetCredit(ScriptMethodParams ¶ms) {
PARAMS1(int, ID);
- params._result = (_state->_credits[0][ID]._text == IMAGE_TEXT) ?
- "image" : _state->_credits[0][ID]._text.c_str();
+ params._result = (_credits[0][ID]._text == IMAGE_TEXT) ?
+ "image" : _credits[0][ID]._text.c_str();
}
void AGSCreditz1::IsCreditScrollingFinished(ScriptMethodParams ¶ms) {
- params._result = _state->_seqSettings[0].finished;
+ params._result = _seqSettings[0].finished;
}
void AGSCreditz1::PauseScroll(ScriptMethodParams ¶ms) {
PARAMS1(bool, onoff);
- _state->_paused = onoff;
+ _paused = onoff;
}
void AGSCreditz1::ScrollReset(ScriptMethodParams ¶ms) {
- _state->_credits[0].clear();
- _state->_creditsRunning = false;
+ _credits[0].clear();
+ _creditsRunning = false;
}
void AGSCreditz1::SetEmptyLineHeight(ScriptMethodParams ¶ms) {
PARAMS1(int, emptylineheight);
- _state->_emptyLineHeight = emptylineheight;
+ _emptyLineHeight = emptylineheight;
}
void AGSCreditz1::GetEmptyLineHeight(ScriptMethodParams ¶ms) {
- params._result = _state->_emptyLineHeight;
+ params._result = _emptyLineHeight;
}
void AGSCreditz1::SetStaticCredit(ScriptMethodParams ¶ms) {
PARAMS8(int, ID, int, x, int, y, int, font, int, creditcolour, \
bool, center, int, generateoutline, string, credit);
- if (ID >= (int)_state->_credits[0].size())
- _state->_credits[0].resize(ID + 1);
+ if (ID >= (int)_credits[0].size())
+ _credits[0].resize(ID + 1);
if (center) {
int32 creditW, creditH;
_engine->GetTextExtent(font, credit, &creditW, &creditH);
- x = (_state->_screenWidth - creditW) / 2;
+ x = (_screenWidth - creditW) / 2;
}
- StCredit &c = _state->_stCredits[0][ID];
+ StCredit &c = _stCredits[0][ID];
c.credit = credit;
c.font = font;
c.color = creditcolour;
@@ -197,7 +197,7 @@ void AGSCreditz1::SetStaticCredit(ScriptMethodParams ¶ms) {
void AGSCreditz1::GetStaticCredit(ScriptMethodParams ¶ms) {
PARAMS1(int, ID);
- StCredit &c = _state->_stCredits[0][ID];
+ StCredit &c = _stCredits[0][ID];
params._result = c.credit.c_str();
}
@@ -205,40 +205,40 @@ void AGSCreditz1::StartEndStaticCredits(ScriptMethodParams ¶ms) {
PARAMS2(bool, onoff, int, res);
if (!onoff) {
- _state->_staticCredits = false;
+ _staticCredits = false;
} else if (res != 1 && res != 2) {
_engine->AbortGame("StartEndStaticCredits: Wrong resolution");
} else {
- _state->_currentStatic = 0;
- _engine->GetScreenDimensions(&_state->_screenWidth,
- &_state->_screenHeight, &_state->_screenColorDepth);
+ _currentStatic = 0;
+ _engine->GetScreenDimensions(&_screenWidth,
+ &_screenHeight, &_screenColorDepth);
- _state->_staticScreenWidth = (res == 1) ? 320 : 640;
- _state->_staticWidthMatches = _state->_screenWidth == _state->_staticScreenWidth;
+ _staticScreenWidth = (res == 1) ? 320 : 640;
+ _staticWidthMatches = _screenWidth == _staticScreenWidth;
}
}
void AGSCreditz1::GetCurrentStaticCredit(ScriptMethodParams ¶ms) {
- params._result = _state->_currentStatic;
+ params._result = _currentStatic;
}
void AGSCreditz1::SetDefaultStaticDelay(ScriptMethodParams ¶ms) {
PARAMS1(int, Cyclesperchar);
- _state->_stSeqSettings[0].speed = Cyclesperchar;
+ _stSeqSettings[0].speed = Cyclesperchar;
}
void AGSCreditz1::SetStaticPause(ScriptMethodParams ¶ms) {
PARAMS2(int, ID, int, length);
- _state->_stCredits[0][ID].pause = length;
+ _stCredits[0][ID].pause = length;
}
void AGSCreditz1::SetStaticCreditTitle(ScriptMethodParams ¶ms) {
PARAMS8(int, ID, int, x, int, y, int, titlefont, int, titlecolour, \
int, centered, int, generateoutline, string, title);
- StCredit &c = _state->_stCredits[0][ID];
+ StCredit &c = _stCredits[0][ID];
c.title_x = x;
c.title_y = y;
c.title_font = titlefont;
@@ -251,9 +251,9 @@ void AGSCreditz1::SetStaticCreditTitle(ScriptMethodParams ¶ms) {
void AGSCreditz1::ShowStaticCredit(ScriptMethodParams ¶ms) {
PARAMS6(int, ID, int, time, int, style, int, transtime, \
int, sound, int, res);
- const StCredit &c = _state->_stCredits[0][ID];
+ const StCredit &c = _stCredits[0][ID];
- if (!_state->_staticCredits) {
+ if (!_staticCredits) {
if (c.credit.empty() && c.title.empty()) {
_engine->AbortGame("ShowStaticCredit: Credit not set!");
} else if (res == 1 || (res == 2 && c.credit != "P=A=U=S=E")) {
@@ -262,12 +262,12 @@ void AGSCreditz1::ShowStaticCredit(ScriptMethodParams ¶ms) {
warning("TODO: Use %d %d %d", transtime, time, sound);
}
- _engine->GetScreenDimensions(&_state->_screenWidth,
- &_state->_screenHeight, &_state->_screenColorDepth);
+ _engine->GetScreenDimensions(&_screenWidth,
+ &_screenHeight, &_screenColorDepth);
- _state->_staticScreenWidth = (res == 1) ? 320 : 640;
- _state->_staticWidthMatches = _state->_screenWidth == _state->_staticScreenWidth;
- _state->_currentStatic = ID;
+ _staticScreenWidth = (res == 1) ? 320 : 640;
+ _staticWidthMatches = _screenWidth == _staticScreenWidth;
+ _currentStatic = ID;
// TODO: Final setup
}
@@ -277,13 +277,13 @@ void AGSCreditz1::ShowStaticCredit(ScriptMethodParams ¶ms) {
}
void AGSCreditz1::StaticReset(ScriptMethodParams ¶ms) {
- _state->_stCredits[0].clear();
+ _stCredits[0].clear();
}
void AGSCreditz1::GetStaticCreditTitle(ScriptMethodParams ¶ms) {
PARAMS1(int, ID);
- const StCredit &c = _state->_stCredits[0][ID];
+ const StCredit &c = _stCredits[0][ID];
params._result = c.title.c_str();
}
@@ -294,10 +294,10 @@ void AGSCreditz1::SetStaticCreditImage(ScriptMethodParams ¶ms) {
if (Hcentered) {
BITMAP *gfx = _engine->GetSpriteGraphic(slot);
if (Hcentered)
- x = (_state->_screenWidth - gfx->w) / 2;
+ x = (_screenWidth - gfx->w) / 2;
}
- StCredit &c = _state->_stCredits[0][ID];
+ StCredit &c = _stCredits[0][ID];
c.credit = "I=M=A=G=E";
c.x = x;
c.y = y;
@@ -308,7 +308,7 @@ void AGSCreditz1::SetStaticCreditImage(ScriptMethodParams ¶ms) {
}
void AGSCreditz1::IsStaticCreditsFinished(ScriptMethodParams ¶ms) {
- params._result = _state->_stSeqSettings[0].finished;
+ params._result = _stSeqSettings[0].finished;
}
} // namespace AGSCreditz
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz2.cpp b/engines/ags/plugins/ags_creditz/ags_creditz2.cpp
index 63162ca04a..ae3f0136a5 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz2.cpp
+++ b/engines/ags/plugins/ags_creditz/ags_creditz2.cpp
@@ -76,10 +76,10 @@ void AGSCreditz2::SetCredit(ScriptMethodParams ¶ms) {
PARAMS7(int, sequence, int, line, string, credit, int, x_pos, int, font, int, color, int, gen_outline);
assert(sequence >= 0 && sequence <= 10);
- if (line >= (int)_state->_credits[sequence].size())
- _state->_credits[sequence].resize(line + 1);
+ if (line >= (int)_credits[sequence].size())
+ _credits[sequence].resize(line + 1);
- Credit &c = _state->_credits[sequence][line];
+ Credit &c = _credits[sequence][line];
c._text = credit;
c._fontSlot = font;
c._colorHeight = color;
@@ -92,31 +92,31 @@ void AGSCreditz2::SetCredit(ScriptMethodParams ¶ms) {
void AGSCreditz2::GetCredit(ScriptMethodParams ¶ms) {
PARAMS2(int, sequence, int, ID);
- params._result = _state->_credits[sequence][ID]._text.c_str();
+ params._result = _credits[sequence][ID]._text.c_str();
}
void AGSCreditz2::CreditsSettings(ScriptMethodParams ¶ms) {
PARAMS1(int, emptylineheight);
if (emptylineheight >= 0)
- _state->_emptyLineHeight = emptylineheight;
+ _emptyLineHeight = emptylineheight;
}
void AGSCreditz2::SequenceSettings(ScriptMethodParams ¶ms) {
PARAMS6(int, sequence, int, startpoint, int, endPoint, int, speed, int, automatic, int, endwait);
- _state->_seqSettings[sequence].startpoint = startpoint;
- _state->_seqSettings[sequence].endpoint = endPoint;
- _state->_seqSettings[sequence].speed = speed;
- _state->_seqSettings[sequence].automatic = automatic;
- _state->_seqSettings[sequence].endwait = endwait;
+ _seqSettings[sequence].startpoint = startpoint;
+ _seqSettings[sequence].endpoint = endPoint;
+ _seqSettings[sequence].speed = speed;
+ _seqSettings[sequence].automatic = automatic;
+ _seqSettings[sequence].endwait = endwait;
}
void AGSCreditz2::IsSequenceFinished(ScriptMethodParams ¶ms) {
PARAMS1(int, sequence);
- if (_state->_seqSettings[sequence].finished) {
- _state->_seqSettings[sequence].finished = false;
+ if (_seqSettings[sequence].finished) {
+ _seqSettings[sequence].finished = false;
params._result = 1;
} else {
params._result = 0;
@@ -124,8 +124,8 @@ void AGSCreditz2::IsSequenceFinished(ScriptMethodParams ¶ms) {
}
void AGSCreditz2::PauseScrolling(ScriptMethodParams ¶ms) {
- if (_state->_creditsRunning) {
- _state->_paused = !_state->_paused;
+ if (_creditsRunning) {
+ _paused = !_paused;
}
}
@@ -133,14 +133,14 @@ void AGSCreditz2::SetCreditImage(ScriptMethodParams ¶ms) {
PARAMS5(int, sequence, int, line, int, xPos, int, slot, int, height);
assert(sequence >= 0 && sequence <= 10);
- if (line >= (int)_state->_credits[sequence].size())
- _state->_credits[sequence].resize(line + 1);
-
- _state->_credits[sequence][line]._image = true;
- _state->_credits[sequence][line]._isSet = true;
- _state->_credits[sequence][line]._x = xPos;
- _state->_credits[sequence][line]._fontSlot = slot;
- _state->_credits[sequence][line]._colorHeight = height;
+ if (line >= (int)_credits[sequence].size())
+ _credits[sequence].resize(line + 1);
+
+ _credits[sequence][line]._image = true;
+ _credits[sequence][line]._isSet = true;
+ _credits[sequence][line]._x = xPos;
+ _credits[sequence][line]._fontSlot = slot;
+ _credits[sequence][line]._colorHeight = height;
}
void AGSCreditz2::ResetSequence(ScriptMethodParams ¶ms) {
@@ -149,10 +149,10 @@ void AGSCreditz2::ResetSequence(ScriptMethodParams ¶ms) {
for (int i = 0; i < 10; ++i) {
if (seqtype != 2)
// Scrolling
- _state->_credits[i].clear();
+ _credits[i].clear();
else
// Static
- _state->_stCredits[i].clear();
+ _stCredits[i].clear();
}
}
@@ -161,17 +161,17 @@ void AGSCreditz2::SetStaticCredit(ScriptMethodParams ¶ms) {
int, font, int, color, int, genOutline);
assert(sequence >= 0 && sequence <= 10);
- if (id >= (int)_state->_stCredits[sequence].size())
- _state->_stCredits[sequence].resize(id + 1);
+ if (id >= (int)_stCredits[sequence].size())
+ _stCredits[sequence].resize(id + 1);
- _state->_stCredits[sequence][id].credit = credit;
- _state->_stCredits[sequence][id].x = xPos;
- _state->_stCredits[sequence][id].y = yPos;
- _state->_stCredits[sequence][id].font = font;
- _state->_stCredits[sequence][id].color = color;
+ _stCredits[sequence][id].credit = credit;
+ _stCredits[sequence][id].x = xPos;
+ _stCredits[sequence][id].y = yPos;
+ _stCredits[sequence][id].font = font;
+ _stCredits[sequence][id].color = color;
if (genOutline > 0)
- _state->_stCredits[sequence][id].outline = true;
+ _stCredits[sequence][id].outline = true;
}
void AGSCreditz2::SetStaticCreditTitle(ScriptMethodParams ¶ms) {
@@ -179,57 +179,57 @@ void AGSCreditz2::SetStaticCreditTitle(ScriptMethodParams ¶ms) {
int, font, int, color, int, genOutline);
assert(sequence >= 0 && sequence < 10);
- if (id >= (int)_state->_stCredits[sequence].size())
- _state->_stCredits[sequence].resize(id + 1);
+ if (id >= (int)_stCredits[sequence].size())
+ _stCredits[sequence].resize(id + 1);
- _state->_stCredits[sequence][id].title = title;
- _state->_stCredits[sequence][id].title_x = xPos;
- _state->_stCredits[sequence][id].title_y = yPos;
- _state->_stCredits[sequence][id].title_font = font;
- _state->_stCredits[sequence][id].title_color = color;
+ _stCredits[sequence][id].title = title;
+ _stCredits[sequence][id].title_x = xPos;
+ _stCredits[sequence][id].title_y = yPos;
+ _stCredits[sequence][id].title_font = font;
+ _stCredits[sequence][id].title_color = color;
if (genOutline > 0)
- _state->_stCredits[sequence][id].title_outline = true;
+ _stCredits[sequence][id].title_outline = true;
}
void AGSCreditz2::SetStaticPause(ScriptMethodParams ¶ms) {
PARAMS3(int, sequence, int, id, int, length);
assert(sequence >= 0 && sequence <= 10);
- if (id >= (int)_state->_stCredits[sequence].size())
- _state->_stCredits[sequence].resize(id + 1);
+ if (id >= (int)_stCredits[sequence].size())
+ _stCredits[sequence].resize(id + 1);
- _state->_stCredits[sequence][id].pause = length;
+ _stCredits[sequence][id].pause = length;
}
void AGSCreditz2::RunStaticCreditSequence(ScriptMethodParams ¶ms) {
PARAMS2(int, sequence, int, speed);
- if (!_state->_creditsRunning) {
- _state->_stSeqSettings[sequence].finished = false;
- _state->_stSeqSettings[sequence].speed = speed;
- _state->_creditSequence = sequence;
- _state->_staticCredits = true;
- _state->_creditsRunning = true;
- _state->_currentStatic = 1;
- _state->_timer = 0;
+ if (!_creditsRunning) {
+ _stSeqSettings[sequence].finished = false;
+ _stSeqSettings[sequence].speed = speed;
+ _creditSequence = sequence;
+ _staticCredits = true;
+ _creditsRunning = true;
+ _currentStatic = 1;
+ _timer = 0;
draw();
} else {
- _state->_staticCredits = false;
- _state->_creditSequence = -1;
- _state->_stSeqSettings[sequence].finished = false;
- _state->_creditsRunning = false;
- _state->_currentStatic = 0;
- _state->_timer = 0;
+ _staticCredits = false;
+ _creditSequence = -1;
+ _stSeqSettings[sequence].finished = false;
+ _creditsRunning = false;
+ _currentStatic = 0;
+ _timer = 0;
}
}
void AGSCreditz2::IsStaticSequenceFinished(ScriptMethodParams ¶ms) {
PARAMS1(int, sequence);
- int result = (_state->_stSeqSettings[sequence].finished) ? 1 : 0;
- _state->_stSeqSettings[sequence].finished = false;
+ int result = (_stSeqSettings[sequence].finished) ? 1 : 0;
+ _stSeqSettings[sequence].finished = false;
params._result = result;
}
@@ -238,19 +238,19 @@ void AGSCreditz2::ShowStaticCredit(ScriptMethodParams ¶ms) {
PARAMS6(int, sequence, int, id, int, time, int, style,
int, styleSettings1, int, styleSettings2);
- _state->_creditSequence = sequence;
- _state->_creditsRunning = true;
- _state->_staticCredits = true;
- _state->_singleStatic.id = id;
- _state->_singleStatic.time = time;
- _state->_singleStatic.style = style;
- _state->_singleStatic.settings1 = styleSettings1;
- _state->_singleStatic.settings2 = styleSettings2;
- _state->_singleStatic.bool_ = true;
- _state->_stSeqSettings[sequence].finished = false;
- _state->_timer = 0;
- _state->_timer2 = 0;
- _state->_numChars = 0;
+ _creditSequence = sequence;
+ _creditsRunning = true;
+ _staticCredits = true;
+ _singleStatic.id = id;
+ _singleStatic.time = time;
+ _singleStatic.style = style;
+ _singleStatic.settings1 = styleSettings1;
+ _singleStatic.settings2 = styleSettings2;
+ _singleStatic.bool_ = true;
+ _stSeqSettings[sequence].finished = false;
+ _timer = 0;
+ _timer2 = 0;
+ _numChars = 0;
draw();
}
@@ -258,20 +258,20 @@ void AGSCreditz2::SetStaticImage(ScriptMethodParams ¶ms) {
PARAMS6(int, sequence, int, id, int, slot, int, xPos, int, yPos, int, length);
assert(sequence >= 0 && sequence < 10);
- if (id >= (int)_state->_stCredits[sequence].size())
- _state->_stCredits[sequence].resize(id + 1);
-
- _state->_stCredits[sequence][id].image = true;
- _state->_stCredits[sequence][id].image_slot = slot;
- _state->_stCredits[sequence][id].x = xPos;
- _state->_stCredits[sequence][id].y = yPos;
- _state->_stCredits[sequence][id].image_time = length;
+ if (id >= (int)_stCredits[sequence].size())
+ _stCredits[sequence].resize(id + 1);
+
+ _stCredits[sequence][id].image = true;
+ _stCredits[sequence][id].image_slot = slot;
+ _stCredits[sequence][id].x = xPos;
+ _stCredits[sequence][id].y = yPos;
+ _stCredits[sequence][id].image_time = length;
}
void AGSCreditz2::GetCurrentStaticCredit(ScriptMethodParams ¶ms) {
int result = -1;
- if (_state->_creditsRunning && _state->_staticCredits)
- result = _state->_currentStatic;
+ if (_creditsRunning && _staticCredits)
+ result = _currentStatic;
params._result = result;
}
Commit: fdb9d8e43eeb54af2c137b8ea466b46a8f2a0410
https://github.com/scummvm/scummvm/commit/fdb9d8e43eeb54af2c137b8ea466b46a8f2a0410
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2021-07-18T17:07:02-07:00
Commit Message:
AGS: Properly handle plugin execMethod for derived plugin classes
Changed paths:
engines/ags/plugins/ags_creditz/ags_creditz1.h
engines/ags/plugins/ags_creditz/ags_creditz2.h
engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.h
engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.h
engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.h
engines/ags/plugins/core/audio_channel.cpp
engines/ags/plugins/core/audio_channel.h
engines/ags/plugins/core/audio_clip.cpp
engines/ags/plugins/core/audio_clip.h
engines/ags/plugins/core/button.cpp
engines/ags/plugins/core/button.h
engines/ags/plugins/core/character.cpp
engines/ags/plugins/core/character.h
engines/ags/plugins/core/date_time.cpp
engines/ags/plugins/core/date_time.h
engines/ags/plugins/core/dialog.cpp
engines/ags/plugins/core/dialog.h
engines/ags/plugins/core/dialog_options_rendering_info.cpp
engines/ags/plugins/core/dialog_options_rendering_info.h
engines/ags/plugins/core/drawing_surface.cpp
engines/ags/plugins/core/drawing_surface.h
engines/ags/plugins/core/dynamic_sprite.cpp
engines/ags/plugins/core/dynamic_sprite.h
engines/ags/plugins/core/file.cpp
engines/ags/plugins/core/file.h
engines/ags/plugins/core/game.cpp
engines/ags/plugins/core/game.h
engines/ags/plugins/core/global_api.cpp
engines/ags/plugins/core/global_api.h
engines/ags/plugins/core/gui.cpp
engines/ags/plugins/core/gui.h
engines/ags/plugins/core/gui_control.cpp
engines/ags/plugins/core/gui_control.h
engines/ags/plugins/core/hotspot.cpp
engines/ags/plugins/core/hotspot.h
engines/ags/plugins/core/inv_window.cpp
engines/ags/plugins/core/inv_window.h
engines/ags/plugins/core/inventory_item.cpp
engines/ags/plugins/core/inventory_item.h
engines/ags/plugins/core/label.cpp
engines/ags/plugins/core/label.h
engines/ags/plugins/core/listbox.cpp
engines/ags/plugins/core/listbox.h
engines/ags/plugins/core/maths.cpp
engines/ags/plugins/core/maths.h
engines/ags/plugins/core/mouse.cpp
engines/ags/plugins/core/mouse.h
engines/ags/plugins/core/object.cpp
engines/ags/plugins/core/object.h
engines/ags/plugins/core/overlay.cpp
engines/ags/plugins/core/overlay.h
engines/ags/plugins/core/parser.cpp
engines/ags/plugins/core/parser.h
engines/ags/plugins/core/region.cpp
engines/ags/plugins/core/region.h
engines/ags/plugins/core/room.cpp
engines/ags/plugins/core/room.h
engines/ags/plugins/core/slider.cpp
engines/ags/plugins/core/slider.h
engines/ags/plugins/core/string.cpp
engines/ags/plugins/core/string.h
engines/ags/plugins/core/system.cpp
engines/ags/plugins/core/system.h
engines/ags/plugins/core/textbox.cpp
engines/ags/plugins/core/textbox.h
engines/ags/plugins/core/view_frame.cpp
engines/ags/plugins/core/view_frame.h
engines/ags/plugins/plugin_base.h
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz1.h b/engines/ags/plugins/ags_creditz/ags_creditz1.h
index 0086879314..7304ce0a87 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz1.h
+++ b/engines/ags/plugins/ags_creditz/ags_creditz1.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace AGSCreditz {
class AGSCreditz1 : public AGSCreditz {
- SCRIPT_HASH(AGSCreditz1)
+ SCRIPT_HASH_SUB(AGSCreditz1, AGSCreditz)
private:
void SetCredit(ScriptMethodParams ¶ms);
void ScrollCredits(ScriptMethodParams ¶ms);
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz2.h b/engines/ags/plugins/ags_creditz/ags_creditz2.h
index 643a629808..2bef4b0872 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz2.h
+++ b/engines/ags/plugins/ags_creditz/ags_creditz2.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace AGSCreditz {
class AGSCreditz2 : public AGSCreditz {
- SCRIPT_HASH(AGSCreditz2)
+ SCRIPT_HASH_SUB(AGSCreditz2, AGSCreditz)
private:
void RunCreditSequence(ScriptMethodParams ¶ms);
void SetCredit(ScriptMethodParams ¶ms);
diff --git a/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.h b/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.h
index 8bb387e071..5e7617ff4f 100644
--- a/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.h
+++ b/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.h
@@ -66,7 +66,7 @@ public:
};
class AGSGalaxy : public AGS2Client {
- SCRIPT_HASH(AGSGalaxy)
+ SCRIPT_HASH_SUB(AGSGalaxy, AGS2Client)
public:
AGSGalaxy() : AGS2Client() {}
virtual ~AGSGalaxy() {}
@@ -76,7 +76,7 @@ public:
};
class AGSSteam : public AGS2Client {
- SCRIPT_HASH(AGSSteam)
+ SCRIPT_HASH_SUB(AGSSteam, AGS2Client)
public:
AGSSteam() : AGS2Client() {}
virtual ~AGSSteam() {}
diff --git a/engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.h b/engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.h
index 775fd492ce..87f29001c0 100644
--- a/engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.h
+++ b/engines/ags/plugins/ags_galaxy_steam/ags_wadjeteye_steam.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace AGSGalaxySteam {
class AGSWadjetEyeSteam : public AGSSteam {
- SCRIPT_HASH(AGSWadjetEyeSteam)
+ SCRIPT_HASH_SUB(AGSWadjetEyeSteam, AGSSteam)
private:
void AddAchievement(ScriptMethodParams ¶ms);
void AddStat(ScriptMethodParams ¶ms);
diff --git a/engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.h b/engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.h
index ebbf327f16..49e94225e2 100644
--- a/engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.h
+++ b/engines/ags/plugins/ags_sprite_font/ags_sprite_font_clifftop.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace AGSSpriteFont {
class AGSSpriteFontClifftopGames : public AGSSpriteFont {
- SCRIPT_HASH(AGSSpriteFontClifftopGames)
+ SCRIPT_HASH_SUB(AGSSpriteFontClifftopGames, AGSSpriteFont)
private:
void SetLineHeightAdjust(ScriptMethodParams ¶ms);
diff --git a/engines/ags/plugins/core/audio_channel.cpp b/engines/ags/plugins/core/audio_channel.cpp
index 3037535730..47221548eb 100644
--- a/engines/ags/plugins/core/audio_channel.cpp
+++ b/engines/ags/plugins/core/audio_channel.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void AudioChannel::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(AudioChannel::Seek^1, AudioChannel::Seek);
SCRIPT_METHOD(AudioChannel::SetRoomLocation^2, AudioChannel::SetRoomLocation);
SCRIPT_METHOD(AudioChannel::Stop^0, AudioChannel::Stop);
diff --git a/engines/ags/plugins/core/audio_channel.h b/engines/ags/plugins/core/audio_channel.h
index e5f85096ea..a1a598ceef 100644
--- a/engines/ags/plugins/core/audio_channel.h
+++ b/engines/ags/plugins/core/audio_channel.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class AudioChannel : public ScriptContainer {
- SCRIPT_HASH(AudioChannel)
+ BUILT_IN_HASH(AudioChannel)
public:
virtual ~AudioChannel() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/audio_clip.cpp b/engines/ags/plugins/core/audio_clip.cpp
index 045ffebe5d..b54eb07e1d 100644
--- a/engines/ags/plugins/core/audio_clip.cpp
+++ b/engines/ags/plugins/core/audio_clip.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void AudioClip::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(AudioClip::Play^2, AudioClip::Play);
SCRIPT_METHOD(AudioClip::PlayFrom^3, AudioClip::PlayFrom);
SCRIPT_METHOD(AudioClip::PlayQueued^2, AudioClip::PlayQueued);
diff --git a/engines/ags/plugins/core/audio_clip.h b/engines/ags/plugins/core/audio_clip.h
index be8ea3d54a..b665583563 100644
--- a/engines/ags/plugins/core/audio_clip.h
+++ b/engines/ags/plugins/core/audio_clip.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class AudioClip : public ScriptContainer {
- SCRIPT_HASH(AudioClip)
+ BUILT_IN_HASH(AudioClip)
public:
virtual ~AudioClip() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/button.cpp b/engines/ags/plugins/core/button.cpp
index 74230fc7c0..678b728988 100644
--- a/engines/ags/plugins/core/button.cpp
+++ b/engines/ags/plugins/core/button.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void Button::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(Button::Animate^4, Button::Animate);
SCRIPT_METHOD(Button::GetText^1, Button::GetText);
SCRIPT_METHOD(Button::SetText^1, Button::SetText);
diff --git a/engines/ags/plugins/core/button.h b/engines/ags/plugins/core/button.h
index 8788b12dee..e36d4c2d9d 100644
--- a/engines/ags/plugins/core/button.h
+++ b/engines/ags/plugins/core/button.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class Button : public ScriptContainer {
- SCRIPT_HASH(Button)
+ BUILT_IN_HASH(Button)
public:
virtual ~Button() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/character.cpp b/engines/ags/plugins/core/character.cpp
index c6bb5fae27..490b068f37 100644
--- a/engines/ags/plugins/core/character.cpp
+++ b/engines/ags/plugins/core/character.cpp
@@ -30,6 +30,8 @@ namespace Plugins {
namespace Core {
void Character::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(Character::AddInventory^2, Character::AddInventory);
SCRIPT_METHOD(Character::AddWaypoint^2, Character::AddWaypoint);
SCRIPT_METHOD(Character::Animate^5, Character::Animate);
diff --git a/engines/ags/plugins/core/character.h b/engines/ags/plugins/core/character.h
index 0fa02b9273..e83b8e8964 100644
--- a/engines/ags/plugins/core/character.h
+++ b/engines/ags/plugins/core/character.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class Character : public ScriptContainer {
- SCRIPT_HASH(Character)
+ BUILT_IN_HASH(Character)
public:
virtual ~Character() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/date_time.cpp b/engines/ags/plugins/core/date_time.cpp
index 9ca99b1630..fc5ca36f05 100644
--- a/engines/ags/plugins/core/date_time.cpp
+++ b/engines/ags/plugins/core/date_time.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void DateTime::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(DateTime::get_Now, DateTime::Now);
SCRIPT_METHOD(DateTime::get_DayOfMonth, DateTime::GetDayOfMonth);
SCRIPT_METHOD(DateTime::get_Hour, DateTime::GetHour);
diff --git a/engines/ags/plugins/core/date_time.h b/engines/ags/plugins/core/date_time.h
index 6fb8e8a48b..028ffa0e72 100644
--- a/engines/ags/plugins/core/date_time.h
+++ b/engines/ags/plugins/core/date_time.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class DateTime : public ScriptContainer {
- SCRIPT_HASH(DateTime)
+ BUILT_IN_HASH(DateTime)
public:
virtual ~DateTime() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/dialog.cpp b/engines/ags/plugins/core/dialog.cpp
index a615f303f6..ae57677c86 100644
--- a/engines/ags/plugins/core/dialog.cpp
+++ b/engines/ags/plugins/core/dialog.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void Dialog::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(Dialog::get_ID, Dialog::GetID);
SCRIPT_METHOD(Dialog::get_OptionCount, Dialog::GetOptionCount);
SCRIPT_METHOD(Dialog::get_ShowTextParser, Dialog::GetShowTextParser);
diff --git a/engines/ags/plugins/core/dialog.h b/engines/ags/plugins/core/dialog.h
index 3981a208e3..60c050a536 100644
--- a/engines/ags/plugins/core/dialog.h
+++ b/engines/ags/plugins/core/dialog.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class Dialog : public ScriptContainer {
- SCRIPT_HASH(Dialog)
+ BUILT_IN_HASH(Dialog)
public:
virtual ~Dialog() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/dialog_options_rendering_info.cpp b/engines/ags/plugins/core/dialog_options_rendering_info.cpp
index 2bf32ad61e..ea99e5914f 100644
--- a/engines/ags/plugins/core/dialog_options_rendering_info.cpp
+++ b/engines/ags/plugins/core/dialog_options_rendering_info.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void DialogOptionsRenderingInfo::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(DialogOptionsRenderingInfo::get_ActiveOptionID, DialogOptionsRenderingInfo::GetActiveOptionID);
SCRIPT_METHOD(DialogOptionsRenderingInfo::set_ActiveOptionID, DialogOptionsRenderingInfo::SetActiveOptionID);
SCRIPT_METHOD(DialogOptionsRenderingInfo::get_DialogToRender, DialogOptionsRenderingInfo::GetDialogToRender);
diff --git a/engines/ags/plugins/core/dialog_options_rendering_info.h b/engines/ags/plugins/core/dialog_options_rendering_info.h
index 1386c47951..64f55e2952 100644
--- a/engines/ags/plugins/core/dialog_options_rendering_info.h
+++ b/engines/ags/plugins/core/dialog_options_rendering_info.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class DialogOptionsRenderingInfo : public ScriptContainer {
- SCRIPT_HASH(DialogOptionsRenderingInfo)
+ BUILT_IN_HASH(DialogOptionsRenderingInfo)
public:
virtual ~DialogOptionsRenderingInfo() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/drawing_surface.cpp b/engines/ags/plugins/core/drawing_surface.cpp
index 5f81b9039e..d3edb7d832 100644
--- a/engines/ags/plugins/core/drawing_surface.cpp
+++ b/engines/ags/plugins/core/drawing_surface.cpp
@@ -29,6 +29,8 @@ namespace Plugins {
namespace Core {
void DrawingSurface::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(DrawingSurface::Clear^1, DrawingSurface::Clear);
SCRIPT_METHOD(DrawingSurface::CreateCopy^0, DrawingSurface::CreateCopy);
SCRIPT_METHOD(DrawingSurface::DrawCircle^3, DrawingSurface::DrawCircle);
diff --git a/engines/ags/plugins/core/drawing_surface.h b/engines/ags/plugins/core/drawing_surface.h
index c516798eaf..8652db925e 100644
--- a/engines/ags/plugins/core/drawing_surface.h
+++ b/engines/ags/plugins/core/drawing_surface.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class DrawingSurface : public ScriptContainer {
- SCRIPT_HASH(DrawingSurface)
+ BUILT_IN_HASH(DrawingSurface)
public:
virtual ~DrawingSurface() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/dynamic_sprite.cpp b/engines/ags/plugins/core/dynamic_sprite.cpp
index af979cea35..031a0a07da 100644
--- a/engines/ags/plugins/core/dynamic_sprite.cpp
+++ b/engines/ags/plugins/core/dynamic_sprite.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void DynamicSprite::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(DynamicSprite::ChangeCanvasSize^4, DynamicSprite::ChangeCanvasSize);
SCRIPT_METHOD(DynamicSprite::CopyTransparencyMask^1, DynamicSprite::CopyTransparencyMask);
SCRIPT_METHOD(DynamicSprite::Crop^4, DynamicSprite::Crop);
diff --git a/engines/ags/plugins/core/dynamic_sprite.h b/engines/ags/plugins/core/dynamic_sprite.h
index 297528320f..7a9ca929ec 100644
--- a/engines/ags/plugins/core/dynamic_sprite.h
+++ b/engines/ags/plugins/core/dynamic_sprite.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class DynamicSprite : public ScriptContainer {
- SCRIPT_HASH(DynamicSprite)
+ BUILT_IN_HASH(DynamicSprite)
public:
virtual ~DynamicSprite() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/file.cpp b/engines/ags/plugins/core/file.cpp
index d0df9533c7..c3060004a9 100644
--- a/engines/ags/plugins/core/file.cpp
+++ b/engines/ags/plugins/core/file.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void File::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(File::Delete^1, File::Delete);
SCRIPT_METHOD(File::Exists^1, File::Exists);
SCRIPT_METHOD(File::Open^2, File::OpenFile);
diff --git a/engines/ags/plugins/core/file.h b/engines/ags/plugins/core/file.h
index 5b8ac25861..53fd6487d9 100644
--- a/engines/ags/plugins/core/file.h
+++ b/engines/ags/plugins/core/file.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class File : public ScriptContainer {
- SCRIPT_HASH(File)
+ BUILT_IN_HASH(File)
public:
virtual ~File() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/game.cpp b/engines/ags/plugins/core/game.cpp
index 908ec0a01c..3a215e24cf 100644
--- a/engines/ags/plugins/core/game.cpp
+++ b/engines/ags/plugins/core/game.cpp
@@ -30,6 +30,8 @@ namespace Plugins {
namespace Core {
void Game::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(Game::IsAudioPlaying^1, Game::IsAudioPlaying);
SCRIPT_METHOD(Game::SetAudioTypeSpeechVolumeDrop^2, Game::SetAudioTypeSpeechVolumeDrop);
SCRIPT_METHOD(Game::SetAudioTypeVolume^3, Game::SetAudioTypeVolume);
diff --git a/engines/ags/plugins/core/game.h b/engines/ags/plugins/core/game.h
index 990ce7195f..c158f7bcca 100644
--- a/engines/ags/plugins/core/game.h
+++ b/engines/ags/plugins/core/game.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class Game : public ScriptContainer {
- SCRIPT_HASH(Game)
+ BUILT_IN_HASH(Game)
public:
virtual ~Game() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/global_api.cpp b/engines/ags/plugins/core/global_api.cpp
index 20377d7f96..99cefa0797 100644
--- a/engines/ags/plugins/core/global_api.cpp
+++ b/engines/ags/plugins/core/global_api.cpp
@@ -76,6 +76,8 @@ namespace Plugins {
namespace Core {
void GlobalAPI::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(AbortGame, GlobalAPI::ScPl_sc_AbortGame);
SCRIPT_METHOD(AddInventory, GlobalAPI::add_inventory);
SCRIPT_METHOD(AddInventoryToCharacter, GlobalAPI::AddInventoryToCharacter);
diff --git a/engines/ags/plugins/core/global_api.h b/engines/ags/plugins/core/global_api.h
index 0f548a2718..47bef2f0d2 100644
--- a/engines/ags/plugins/core/global_api.h
+++ b/engines/ags/plugins/core/global_api.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class GlobalAPI : public ScriptContainer {
- SCRIPT_HASH(GlobalAPI)
+ BUILT_IN_HASH(GlobalAPI)
public:
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/gui.cpp b/engines/ags/plugins/core/gui.cpp
index 932c222237..1145e2371b 100644
--- a/engines/ags/plugins/core/gui.cpp
+++ b/engines/ags/plugins/core/gui.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void GUI::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(GUI::Centre^0, GUI::Centre);
SCRIPT_METHOD(GUI::GetAtScreenXY^2, GUI::GetGUIAtLocation);
SCRIPT_METHOD(GUI::SetPosition^2, GUI::SetPosition);
diff --git a/engines/ags/plugins/core/gui.h b/engines/ags/plugins/core/gui.h
index 95fe961a8d..bbe56ee036 100644
--- a/engines/ags/plugins/core/gui.h
+++ b/engines/ags/plugins/core/gui.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class GUI : public ScriptContainer {
- SCRIPT_HASH(GUI)
+ BUILT_IN_HASH(GUI)
public:
virtual ~GUI() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/gui_control.cpp b/engines/ags/plugins/core/gui_control.cpp
index 898edf6ac8..1ac3c19b30 100644
--- a/engines/ags/plugins/core/gui_control.cpp
+++ b/engines/ags/plugins/core/gui_control.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void GUIControl::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(GUIControl::BringToFront^0, GUIControl::BringToFront);
SCRIPT_METHOD(GUIControl::GetAtScreenXY^2, GUIControl::GetGUIControlAtLocation);
SCRIPT_METHOD(GUIControl::SendToBack^0, GUIControl::SendToBack);
diff --git a/engines/ags/plugins/core/gui_control.h b/engines/ags/plugins/core/gui_control.h
index 1256247e36..9eb1639722 100644
--- a/engines/ags/plugins/core/gui_control.h
+++ b/engines/ags/plugins/core/gui_control.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class GUIControl : public ScriptContainer {
- SCRIPT_HASH(GUIControl)
+ BUILT_IN_HASH(GUIControl)
public:
virtual ~GUIControl() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/hotspot.cpp b/engines/ags/plugins/core/hotspot.cpp
index d323e1e2bc..367298d377 100644
--- a/engines/ags/plugins/core/hotspot.cpp
+++ b/engines/ags/plugins/core/hotspot.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void Hotspot::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(Hotspot::GetAtRoomXY^2, Hotspot::GetHotspotAtRoom);
SCRIPT_METHOD(Hotspot::GetAtScreenXY^2, Hotspot::GetHotspotAtScreen);
SCRIPT_METHOD(Hotspot::GetName^1, Hotspot::GetName);
diff --git a/engines/ags/plugins/core/hotspot.h b/engines/ags/plugins/core/hotspot.h
index 0c72ffa7c7..3de2de5147 100644
--- a/engines/ags/plugins/core/hotspot.h
+++ b/engines/ags/plugins/core/hotspot.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class Hotspot : public ScriptContainer {
- SCRIPT_HASH(Hotspot)
+ BUILT_IN_HASH(Hotspot)
public:
virtual ~Hotspot() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/inv_window.cpp b/engines/ags/plugins/core/inv_window.cpp
index 224e25ccab..18808fe825 100644
--- a/engines/ags/plugins/core/inv_window.cpp
+++ b/engines/ags/plugins/core/inv_window.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void InvWindow::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(InvWindow::ScrollDown^0, InvWindow::ScrollDown);
SCRIPT_METHOD(InvWindow::ScrollUp^0, InvWindow::ScrollUp);
SCRIPT_METHOD(InvWindow::get_CharacterToUse, InvWindow::GetCharacterToUse);
diff --git a/engines/ags/plugins/core/inv_window.h b/engines/ags/plugins/core/inv_window.h
index c94f12ea28..b18cd802f3 100644
--- a/engines/ags/plugins/core/inv_window.h
+++ b/engines/ags/plugins/core/inv_window.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class InvWindow : public ScriptContainer {
- SCRIPT_HASH(InvWindow)
+ BUILT_IN_HASH(InvWindow)
public:
virtual ~InvWindow() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/inventory_item.cpp b/engines/ags/plugins/core/inventory_item.cpp
index e0ee5511ed..6c5fd59e8e 100644
--- a/engines/ags/plugins/core/inventory_item.cpp
+++ b/engines/ags/plugins/core/inventory_item.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void InventoryItem::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(InventoryItem::GetAtScreenXY ^ 2, InventoryItem::GetInvAtLocation);
SCRIPT_METHOD(InventoryItem::IsInteractionAvailable ^ 1, InventoryItem::CheckInteractionAvailable);
SCRIPT_METHOD(InventoryItem::GetName ^ 1, InventoryItem::GetName);
diff --git a/engines/ags/plugins/core/inventory_item.h b/engines/ags/plugins/core/inventory_item.h
index b194c2be36..66591e3978 100644
--- a/engines/ags/plugins/core/inventory_item.h
+++ b/engines/ags/plugins/core/inventory_item.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class InventoryItem : public ScriptContainer {
- SCRIPT_HASH(InventoryItem)
+ BUILT_IN_HASH(InventoryItem)
public:
virtual ~InventoryItem() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/label.cpp b/engines/ags/plugins/core/label.cpp
index 67e31c1242..c74b325937 100644
--- a/engines/ags/plugins/core/label.cpp
+++ b/engines/ags/plugins/core/label.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void Label::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(Label::GetText^1, Label::GetText);
SCRIPT_METHOD(Label::SetText^1, Label::SetText);
SCRIPT_METHOD(Label::get_Font, Label::GetFont);
diff --git a/engines/ags/plugins/core/label.h b/engines/ags/plugins/core/label.h
index f5f7b12a17..de98aef0ac 100644
--- a/engines/ags/plugins/core/label.h
+++ b/engines/ags/plugins/core/label.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class Label : public ScriptContainer {
- SCRIPT_HASH(Label)
+ BUILT_IN_HASH(Label)
public:
virtual ~Label() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/listbox.cpp b/engines/ags/plugins/core/listbox.cpp
index 00eac66172..3eaa0b50ff 100644
--- a/engines/ags/plugins/core/listbox.cpp
+++ b/engines/ags/plugins/core/listbox.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void ListBox::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(ListBox::AddItem^1, ListBox::AddItem);
SCRIPT_METHOD(ListBox::Clear^0, ListBox::Clear);
SCRIPT_METHOD(ListBox::FillDirList^1, ListBox::FillDirList);
diff --git a/engines/ags/plugins/core/listbox.h b/engines/ags/plugins/core/listbox.h
index fe79c6b2b1..962f23b299 100644
--- a/engines/ags/plugins/core/listbox.h
+++ b/engines/ags/plugins/core/listbox.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class ListBox : public ScriptContainer {
- SCRIPT_HASH(ListBox)
+ BUILT_IN_HASH(ListBox)
public:
virtual ~ListBox() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/maths.cpp b/engines/ags/plugins/core/maths.cpp
index 2c1d594662..bbe0f4c76d 100644
--- a/engines/ags/plugins/core/maths.cpp
+++ b/engines/ags/plugins/core/maths.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void Maths::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(Maths::ArcCos^1, Maths::ArcCos);
SCRIPT_METHOD(Maths::ArcSin^1, Maths::ArcSin);
SCRIPT_METHOD(Maths::ArcTan^1, Maths::ArcTan);
diff --git a/engines/ags/plugins/core/maths.h b/engines/ags/plugins/core/maths.h
index 5d345d5241..bb7cc7b278 100644
--- a/engines/ags/plugins/core/maths.h
+++ b/engines/ags/plugins/core/maths.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class Maths : public ScriptContainer {
- SCRIPT_HASH(Maths)
+ BUILT_IN_HASH(Maths)
public:
virtual ~Maths() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/mouse.cpp b/engines/ags/plugins/core/mouse.cpp
index 3fcdd4c5de..dff14c9135 100644
--- a/engines/ags/plugins/core/mouse.cpp
+++ b/engines/ags/plugins/core/mouse.cpp
@@ -29,6 +29,8 @@ namespace Plugins {
namespace Core {
void Mouse::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(Mouse::ChangeModeGraphic^2, Mouse::ChangeCursorGraphic);
SCRIPT_METHOD(Mouse::ChangeModeHotspot^3, Mouse::ChangeCursorHotspot);
SCRIPT_METHOD(Mouse::ChangeModeView^2, Mouse::Mouse_ChangeModeView);
diff --git a/engines/ags/plugins/core/mouse.h b/engines/ags/plugins/core/mouse.h
index 436f084a5e..aa751ff6fe 100644
--- a/engines/ags/plugins/core/mouse.h
+++ b/engines/ags/plugins/core/mouse.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class Mouse : public ScriptContainer {
- SCRIPT_HASH(Mouse)
+ BUILT_IN_HASH(Mouse)
public:
virtual ~Mouse() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/object.cpp b/engines/ags/plugins/core/object.cpp
index 3c85c0e95e..0db042604d 100644
--- a/engines/ags/plugins/core/object.cpp
+++ b/engines/ags/plugins/core/object.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void Object::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(Object::Animate^5, Object::Animate);
SCRIPT_METHOD(Object::IsCollidingWithObject^1, Object::IsCollidingWithObject);
SCRIPT_METHOD(Object::GetName^1, Object::GetName);
diff --git a/engines/ags/plugins/core/object.h b/engines/ags/plugins/core/object.h
index c0aa7b97f0..44d2721c28 100644
--- a/engines/ags/plugins/core/object.h
+++ b/engines/ags/plugins/core/object.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class Object : public ScriptContainer {
- SCRIPT_HASH(Object)
+ BUILT_IN_HASH(Object)
public:
virtual ~Object() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/overlay.cpp b/engines/ags/plugins/core/overlay.cpp
index cde24bd78c..53e114c338 100644
--- a/engines/ags/plugins/core/overlay.cpp
+++ b/engines/ags/plugins/core/overlay.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void Overlay::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(Overlay::CreateGraphical^4, Overlay::CreateGraphical);
SCRIPT_METHOD(Overlay::CreateTextual^106, Overlay::ScPl_CreateTextual);
SCRIPT_METHOD(Overlay::SetText^104, Overlay::ScPl_SetText);
diff --git a/engines/ags/plugins/core/overlay.h b/engines/ags/plugins/core/overlay.h
index 535d6c13ff..4ce622fa43 100644
--- a/engines/ags/plugins/core/overlay.h
+++ b/engines/ags/plugins/core/overlay.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class Overlay : public ScriptContainer {
- SCRIPT_HASH(Overlay)
+ BUILT_IN_HASH(Overlay)
public:
virtual ~Overlay() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/parser.cpp b/engines/ags/plugins/core/parser.cpp
index db24f71538..411c7cfd01 100644
--- a/engines/ags/plugins/core/parser.cpp
+++ b/engines/ags/plugins/core/parser.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void Parser::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(Parser::FindWordID^1, Parser::FindWordID);
SCRIPT_METHOD(Parser::ParseText^1, Parser::ParseText);
SCRIPT_METHOD(Parser::SaidUnknownWord^0, Parser::SaidUnknownWord);
diff --git a/engines/ags/plugins/core/parser.h b/engines/ags/plugins/core/parser.h
index 09fe5924d0..230fdb3207 100644
--- a/engines/ags/plugins/core/parser.h
+++ b/engines/ags/plugins/core/parser.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class Parser : public ScriptContainer {
- SCRIPT_HASH(Parser)
+ BUILT_IN_HASH(Parser)
public:
virtual ~Parser() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/region.cpp b/engines/ags/plugins/core/region.cpp
index b084fef61f..725f52282c 100644
--- a/engines/ags/plugins/core/region.cpp
+++ b/engines/ags/plugins/core/region.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void Region::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(Region::GetAtRoomXY^2, Region::GetRegionAtRoom);
SCRIPT_METHOD(Region::GetAtScreenXY^2, Region::GetRegionAtScreen);
SCRIPT_METHOD(Region::Tint^4, Region::TintNoLum);
diff --git a/engines/ags/plugins/core/region.h b/engines/ags/plugins/core/region.h
index d36685dca0..18a11f79e3 100644
--- a/engines/ags/plugins/core/region.h
+++ b/engines/ags/plugins/core/region.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class Region : public ScriptContainer {
- SCRIPT_HASH(Region)
+ BUILT_IN_HASH(Region)
public:
virtual ~Region() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/room.cpp b/engines/ags/plugins/core/room.cpp
index 30bef68473..4917c05685 100644
--- a/engines/ags/plugins/core/room.cpp
+++ b/engines/ags/plugins/core/room.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void Room::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(Room::GetDrawingSurfaceForBackground^1, Room::GetDrawingSurfaceForBackground);
SCRIPT_METHOD(Room::GetProperty^1, Room::GetProperty);
SCRIPT_METHOD(Room::GetTextProperty^1, Room::GetTextProperty);
diff --git a/engines/ags/plugins/core/room.h b/engines/ags/plugins/core/room.h
index 6bdc1288ff..f891e9f77e 100644
--- a/engines/ags/plugins/core/room.h
+++ b/engines/ags/plugins/core/room.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class Room : public ScriptContainer {
- SCRIPT_HASH(Room)
+ BUILT_IN_HASH(Room)
public:
virtual ~Room() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/slider.cpp b/engines/ags/plugins/core/slider.cpp
index 6002fc37f3..2d3e094ba0 100644
--- a/engines/ags/plugins/core/slider.cpp
+++ b/engines/ags/plugins/core/slider.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void Slider::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(Slider::get_BackgroundGraphic, Slider::GetBackgroundGraphic);
SCRIPT_METHOD(Slider::set_BackgroundGraphic, Slider::SetBackgroundGraphic);
SCRIPT_METHOD(Slider::get_HandleGraphic, Slider::GetHandleGraphic);
diff --git a/engines/ags/plugins/core/slider.h b/engines/ags/plugins/core/slider.h
index 02c5c52c68..dd6fb1205e 100644
--- a/engines/ags/plugins/core/slider.h
+++ b/engines/ags/plugins/core/slider.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class Slider : public ScriptContainer {
- SCRIPT_HASH(Slider)
+ BUILT_IN_HASH(Slider)
public:
virtual ~Slider() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/string.cpp b/engines/ags/plugins/core/string.cpp
index 4809e67440..d08a2543cc 100644
--- a/engines/ags/plugins/core/string.cpp
+++ b/engines/ags/plugins/core/string.cpp
@@ -29,6 +29,8 @@ namespace Plugins {
namespace Core {
void String::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(String::IsNullOrEmpty^1, String::IsNullOrEmpty);
SCRIPT_METHOD(String::Append^1, String::Append);
SCRIPT_METHOD(String::AppendChar^1, String::AppendChar);
diff --git a/engines/ags/plugins/core/string.h b/engines/ags/plugins/core/string.h
index e64df69479..8b985cfa55 100644
--- a/engines/ags/plugins/core/string.h
+++ b/engines/ags/plugins/core/string.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class String : public ScriptContainer {
- SCRIPT_HASH(String)
+ BUILT_IN_HASH(String)
public:
virtual ~String() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/system.cpp b/engines/ags/plugins/core/system.cpp
index 723ef6a35a..5c6842a15c 100644
--- a/engines/ags/plugins/core/system.cpp
+++ b/engines/ags/plugins/core/system.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void System::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(System::get_AudioChannelCount, System::GetAudioChannelCount);
SCRIPT_METHOD(System::geti_AudioChannels, System::GetAudioChannels);
SCRIPT_METHOD(System::get_CapsLock, System::GetCapsLock);
diff --git a/engines/ags/plugins/core/system.h b/engines/ags/plugins/core/system.h
index 25b0c98497..85ec5a0412 100644
--- a/engines/ags/plugins/core/system.h
+++ b/engines/ags/plugins/core/system.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class System : public ScriptContainer {
- SCRIPT_HASH(System)
+ BUILT_IN_HASH(System)
public:
virtual ~System() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/textbox.cpp b/engines/ags/plugins/core/textbox.cpp
index 5e25ca958b..da0ac2170c 100644
--- a/engines/ags/plugins/core/textbox.cpp
+++ b/engines/ags/plugins/core/textbox.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void Textbox::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(TextBox::GetText^1, Textbox::GetText);
SCRIPT_METHOD(TextBox::SetText^1, Textbox::SetText);
SCRIPT_METHOD(TextBox::get_Font, Textbox::GetFont);
diff --git a/engines/ags/plugins/core/textbox.h b/engines/ags/plugins/core/textbox.h
index eff98e0fe8..e1bb0f2971 100644
--- a/engines/ags/plugins/core/textbox.h
+++ b/engines/ags/plugins/core/textbox.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class Textbox : public ScriptContainer {
- SCRIPT_HASH(Textbox)
+ BUILT_IN_HASH(Textbox)
public:
virtual ~Textbox() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/core/view_frame.cpp b/engines/ags/plugins/core/view_frame.cpp
index 7376bf67d8..969d23dd85 100644
--- a/engines/ags/plugins/core/view_frame.cpp
+++ b/engines/ags/plugins/core/view_frame.cpp
@@ -28,6 +28,8 @@ namespace Plugins {
namespace Core {
void ViewFrame::AGS_EngineStartup(IAGSEngine *engine) {
+ ScriptContainer::AGS_EngineStartup(engine);
+
SCRIPT_METHOD(ViewFrame::get_Flipped, ViewFrame::GetFlipped);
SCRIPT_METHOD(ViewFrame::get_Frame, ViewFrame::GetFrame);
SCRIPT_METHOD(ViewFrame::get_Graphic, ViewFrame::GetGraphic);
diff --git a/engines/ags/plugins/core/view_frame.h b/engines/ags/plugins/core/view_frame.h
index 2cfffef528..3deb2a7354 100644
--- a/engines/ags/plugins/core/view_frame.h
+++ b/engines/ags/plugins/core/view_frame.h
@@ -30,7 +30,7 @@ namespace Plugins {
namespace Core {
class ViewFrame : public ScriptContainer {
- SCRIPT_HASH(ViewFrame)
+ BUILT_IN_HASH(ViewFrame)
public:
virtual ~ViewFrame() {}
void AGS_EngineStartup(IAGSEngine *engine) override;
diff --git a/engines/ags/plugins/plugin_base.h b/engines/ags/plugins/plugin_base.h
index e0e08c2f10..1f78b6ebf1 100644
--- a/engines/ags/plugins/plugin_base.h
+++ b/engines/ags/plugins/plugin_base.h
@@ -37,7 +37,7 @@ namespace Plugins {
#define SCRIPT_METHOD(NAME, PROC) addMethod(#NAME, &PROC)
-#define SCRIPT_HASH(TheClass) \
+#define SCRIPT_HASH_SUB(TheClass, BaseClass) \
private: \
typedef void (TheClass::*MethodPtr)(ScriptMethodParams ¶ms); \
Common::HashMap<Common::String, MethodPtr> _methods; \
@@ -46,11 +46,14 @@ namespace Plugins {
_engine->RegisterScriptFunction(name.c_str(), this); \
} \
public: \
- void execMethod(const Common::String &name, ScriptMethodParams & params) override { \
- if (!_methods.contains(name)) \
- error("Plugin does not contain method - %s", name.c_str()); \
- (this->*_methods[name])(params); \
+ void execMethod(const Common::String &name, ScriptMethodParams ¶ms) override { \
+ if (_methods.contains(name)) \
+ (this->*_methods[name])(params); \
+ else \
+ BaseClass::execMethod(name, params); \
}
+#define SCRIPT_HASH(TheClass) SCRIPT_HASH_SUB(TheClass, PluginBase)
+#define BUILT_IN_HASH(TheClass) SCRIPT_HASH_SUB(TheClass, ScriptContainer)
inline float PARAM_TO_FLOAT(int32 xi) {
float x;
@@ -147,7 +150,9 @@ public:
_engine = engine;
}
- virtual void execMethod(const Common::String &name, ScriptMethodParams ¶ms) = 0;
+ virtual void execMethod(const Common::String &name, ScriptMethodParams ¶ms) {
+ error("Plugin does not contain method - %s", name.c_str());
+ }
};
/**
Commit: 14b53d9a9e1ac19648ed75aa05afab0049c7a456
https://github.com/scummvm/scummvm/commit/14b53d9a9e1ac19648ed75aa05afab0049c7a456
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2021-07-18T17:07:02-07:00
Commit Message:
AGS: Moved plugins globals into Globals
Changed paths:
engines/ags/engine/debugging/debug.cpp
engines/ags/globals.cpp
engines/ags/globals.h
engines/ags/plugins/ags_plugin.cpp
engines/ags/plugins/ags_plugin.h
engines/ags/plugins/plugin_engine.h
diff --git a/engines/ags/engine/debugging/debug.cpp b/engines/ags/engine/debugging/debug.cpp
index 7e7325d06e..79500b8c90 100644
--- a/engines/ags/engine/debugging/debug.cpp
+++ b/engines/ags/engine/debugging/debug.cpp
@@ -490,12 +490,11 @@ void break_into_debugger() {
}
int scrDebugWait = 0;
-extern int pluginsWantingDebugHooks;
// allow LShift to single-step, RShift to pause flow
void scriptDebugHook(ccInstance *ccinst, int linenum) {
- if (pluginsWantingDebugHooks > 0) {
+ if (_G(pluginsWantingDebugHooks) > 0) {
// a plugin is handling the debugging
String scname = GetScriptName(ccinst);
pl_run_plugin_debug_hooks(scname.GetCStr(), linenum);
diff --git a/engines/ags/globals.cpp b/engines/ags/globals.cpp
index 88b316276e..1791f4547d 100644
--- a/engines/ags/globals.cpp
+++ b/engines/ags/globals.cpp
@@ -93,6 +93,7 @@
#include "ags/engine/script/script.h"
#include "ags/engine/script/system_imports.h"
#include "ags/lib/std/limits.h"
+#include "ags/plugins/ags_plugin.h"
#include "ags/plugins/plugin_object_reader.h"
#include "ags/plugins/core/core.h"
#include "common/file.h"
@@ -207,7 +208,6 @@ Globals::Globals() {
_myScriptStringImpl = new ScriptString();
_guis = new std::vector<AGS::Shared::GUIMain>();
_play = new GameState();
- _engineExports = new Plugins::Core::EngineExports();
_game = new GameSetupStruct();
_spriteset = new SpriteCache(_game->SpriteInfos);
_thisroom = new AGS::Shared::RoomStruct();
@@ -294,6 +294,10 @@ Globals::Globals() {
// overlay.cpp globals
_screenover = new ScreenOverlay[MAX_SCREEN_OVERLAYS];
+ // plugins globals
+ _engineExports = new Plugins::Core::EngineExports();
+ _plugins = new Common::Array<EnginePlugin>();
+
// plugin_object_reader.cpp globals
_pluginReaders = new PluginObjectReader[MAX_PLUGIN_OBJECT_READERS];
@@ -516,6 +520,10 @@ Globals::~Globals() {
// overlay.cpp globals
delete[] _screenover;
+ // plugins globals
+ delete _engineExports;
+ delete _plugins;
+
// plugin_object_reader.cpp globals
delete[] _pluginReaders;
diff --git a/engines/ags/globals.h b/engines/ags/globals.h
index 2fca1230eb..60c51933fc 100644
--- a/engines/ags/globals.h
+++ b/engines/ags/globals.h
@@ -128,6 +128,7 @@ struct COLOR_MAP;
struct CSCIMessage;
struct DialogTopic;
struct DirtyRects;
+struct EnginePlugin;
struct ExecutingScript;
struct EventHappened;
struct GameFrameSetup;
@@ -699,7 +700,6 @@ public:
* @{
*/
- Plugins::Core::EngineExports *_engineExports;
GameSetupStruct *_game;
GameState *_play;
SpriteCache *_spriteset;
@@ -1298,6 +1298,12 @@ public:
* @{
*/
+ Plugins::Core::EngineExports *_engineExports;
+ Common::Array<EnginePlugin> *_plugins;
+ int _pluginsWantingDebugHooks = 0;
+ long _pl_file_handle = -1;
+ AGS::Shared::Stream *_pl_file_stream = nullptr;
+
int _pluginSimulatedClick = -1;
int _mouse_z_was = 0;
diff --git a/engines/ags/plugins/ags_plugin.cpp b/engines/ags/plugins/ags_plugin.cpp
index 917ce7454b..98002a5a24 100644
--- a/engines/ags/plugins/ags_plugin.cpp
+++ b/engines/ags/plugins/ags_plugin.cpp
@@ -82,42 +82,11 @@ using namespace AGS::Shared::Memory;
using namespace AGS::Engine;
const int PLUGIN_API_VERSION = 25;
-struct EnginePlugin {
- char filename[PLUGIN_FILENAME_MAX + 1];
- AGS::Engine::Library library;
- Plugins::PluginBase *_plugin;
- bool available;
- char *savedata;
- int savedatasize;
- int wantHook;
- int invalidatedRegion;
-
- IAGSEngine eiface;
- bool builtin;
-
- EnginePlugin() {
- filename[0] = 0;
- wantHook = 0;
- invalidatedRegion = 0;
- savedata = nullptr;
- savedatasize = 0;
- builtin = false;
- available = false;
- eiface.version = 0;
- eiface.pluginId = 0;
- }
-};
#define MAXPLUGINS 20
-EnginePlugin plugins[MAXPLUGINS];
-int numPlugins = 0;
-int pluginsWantingDebugHooks = 0;
// On save/restore, the Engine will provide the plugin with a handle. Because we only ever save to one file at a time,
// we can reuse the same handle.
-long pl_file_handle = -1;
-Stream *pl_file_stream = nullptr;
-
void PluginSimulateMouseClick(int pluginButtonID) {
_G(pluginSimulatedClick) = pluginButtonID - 1;
}
@@ -157,8 +126,8 @@ void IAGSEngine::RequestEventHook(int32 event) {
quit("!IAGSEngine::RequestEventHook: invalid event requested");
if ((event & AGSE_SCRIPTDEBUG) &&
- ((plugins[this->pluginId].wantHook & AGSE_SCRIPTDEBUG) == 0)) {
- pluginsWantingDebugHooks++;
+ ((_GP(plugins)[this->pluginId].wantHook & AGSE_SCRIPTDEBUG) == 0)) {
+ _G(pluginsWantingDebugHooks)++;
ccSetDebugHook(scriptDebugHook);
}
@@ -166,7 +135,7 @@ void IAGSEngine::RequestEventHook(int32 event) {
quit("Plugin requested AUDIODECODE, which is no longer supported");
}
- plugins[this->pluginId].wantHook |= event;
+ _GP(plugins)[this->pluginId].wantHook |= event;
}
void IAGSEngine::UnrequestEventHook(int32 event) {
@@ -174,23 +143,23 @@ void IAGSEngine::UnrequestEventHook(int32 event) {
quit("!IAGSEngine::UnrequestEventHook: invalid event requested");
if ((event & AGSE_SCRIPTDEBUG) &&
- (plugins[this->pluginId].wantHook & AGSE_SCRIPTDEBUG)) {
- pluginsWantingDebugHooks--;
- if (pluginsWantingDebugHooks < 1)
+ (_GP(plugins)[this->pluginId].wantHook & AGSE_SCRIPTDEBUG)) {
+ _G(pluginsWantingDebugHooks)--;
+ if (_G(pluginsWantingDebugHooks) < 1)
ccSetDebugHook(nullptr);
}
- plugins[this->pluginId].wantHook &= ~event;
+ _GP(plugins)[this->pluginId].wantHook &= ~event;
}
int IAGSEngine::GetSavedData(char *buffer, int32 bufsize) {
- int savedatasize = plugins[this->pluginId].savedatasize;
+ int savedatasize = _GP(plugins)[this->pluginId].savedatasize;
if (bufsize < savedatasize)
quit("!IAGSEngine::GetSavedData: buffer too small");
if (savedatasize > 0)
- memcpy(buffer, plugins[this->pluginId].savedata, savedatasize);
+ memcpy(buffer, _GP(plugins)[this->pluginId].savedata, savedatasize);
return savedatasize;
}
@@ -219,7 +188,7 @@ int IAGSEngine::GetBitmapPitch(BITMAP *bmp) {
uint8 *IAGSEngine::GetRawBitmapSurface(BITMAP *bmp) {
Bitmap *stage = _G(gfxDriver)->GetStageBackBuffer(true);
if (stage && bmp == stage->GetAllegroBitmap())
- plugins[this->pluginId].invalidatedRegion = 0;
+ _GP(plugins)[this->pluginId].invalidatedRegion = 0;
return (uint8 *)bmp->getPixels();
}
@@ -229,7 +198,7 @@ void IAGSEngine::ReleaseBitmapSurface(BITMAP *bmp) {
if (stage && bmp == stage->GetAllegroBitmap()) {
// plugin does not manaually invalidate stuff, so
// we must invalidate the whole screen to be safe
- if (!plugins[this->pluginId].invalidatedRegion)
+ if (!_GP(plugins)[this->pluginId].invalidatedRegion)
invalidate_screen();
}
}
@@ -268,33 +237,33 @@ void IAGSEngine::GetBitmapDimensions(BITMAP *bmp, int32 *width, int32 *height, i
}
void pl_set_file_handle(long data, Stream *stream) {
- pl_file_handle = data;
- pl_file_stream = stream;
+ _G(pl_file_handle) = data;
+ _G(pl_file_stream) = stream;
}
void pl_clear_file_handle() {
- pl_file_handle = -1;
- pl_file_stream = nullptr;
+ _G(pl_file_handle) = -1;
+ _G(pl_file_stream) = nullptr;
}
int IAGSEngine::FRead(void *buffer, int32 len, int32 handle) {
- if (handle != pl_file_handle) {
+ if (handle != _G(pl_file_handle)) {
quitprintf("IAGSEngine::FRead: invalid file handle: %d", handle);
}
- if (!pl_file_stream) {
+ if (!_G(pl_file_stream)) {
quit("IAGSEngine::FRead: file stream not set");
}
- return pl_file_stream->Read(buffer, len);
+ return _G(pl_file_stream)->Read(buffer, len);
}
int IAGSEngine::FWrite(void *buffer, int32 len, int32 handle) {
- if (handle != pl_file_handle) {
+ if (handle != _G(pl_file_handle)) {
quitprintf("IAGSEngine::FWrite: invalid file handle: %d", handle);
}
- if (!pl_file_stream) {
+ if (!_G(pl_file_stream)) {
quit("IAGSEngine::FWrite: file stream not set");
}
- return pl_file_stream->Write(buffer, len);
+ return _G(pl_file_stream)->Write(buffer, len);
}
void IAGSEngine::DrawTextWrapped(int32 xx, int32 yy, int32 wid, int32 font, int32 color, const char *text) {
@@ -554,7 +523,7 @@ void IAGSEngine::PlaySoundChannel(int32 channel, int32 soundType, int32 volume,
// Engine interface 12 and above are below
void IAGSEngine::MarkRegionDirty(int32 left, int32 top, int32 right, int32 bottom) {
invalidate_rect(left, top, right, bottom, false);
- plugins[this->pluginId].invalidatedRegion++;
+ _GP(plugins)[this->pluginId].invalidatedRegion++;
}
AGSMouseCursor *IAGSEngine::GetMouseCursor(int32 cursor) {
if ((cursor < 0) || (cursor >= _GP(game).numcursors))
@@ -775,41 +744,40 @@ void IAGSEngine::GetRenderStageDesc(AGSRenderStageDesc *desc) {
// *********** General plugin implementation **********
void pl_stop_plugins() {
- int a;
+ uint a;
ccSetDebugHook(nullptr);
- for (a = 0; a < numPlugins; a++) {
- if (plugins[a].available) {
- plugins[a]._plugin->AGS_EngineShutdown();
- plugins[a].wantHook = 0;
- if (plugins[a].savedata) {
- free(plugins[a].savedata);
- plugins[a].savedata = nullptr;
+ for (a = 0; a < _GP(plugins).size(); a++) {
+ if (_GP(plugins)[a].available) {
+ _GP(plugins)[a]._plugin->AGS_EngineShutdown();
+ _GP(plugins)[a].wantHook = 0;
+ if (_GP(plugins)[a].savedata) {
+ free(_GP(plugins)[a].savedata);
+ _GP(plugins)[a].savedata = nullptr;
}
- if (!plugins[a].builtin) {
- plugins[a].library.Unload();
+ if (!_GP(plugins)[a].builtin) {
+ _GP(plugins)[a].library.Unload();
}
}
}
- numPlugins = 0;
+ _GP(plugins).clear();
}
void pl_startup_plugins() {
- int i;
- for (i = 0; i < numPlugins; i++) {
+ for (uint i = 0; i < _GP(plugins).size(); i++) {
if (i == 0)
- _GP(engineExports).AGS_EngineStartup(&plugins[0].eiface);
+ _GP(engineExports).AGS_EngineStartup(&_GP(plugins)[0].eiface);
- if (plugins[i].available)
- plugins[i]._plugin->AGS_EngineStartup(&plugins[i].eiface);
+ if (_GP(plugins)[i].available)
+ _GP(plugins)[i]._plugin->AGS_EngineStartup(&_GP(plugins)[i].eiface);
}
}
NumberPtr pl_run_plugin_hooks(int event, NumberPtr data) {
- int i, retval = 0;
- for (i = 0; i < numPlugins; i++) {
- if (plugins[i].wantHook & event) {
- retval = plugins[i]._plugin->AGS_EngineOnEvent(event, data);
+ int retval = 0;
+ for (uint i = 0; i < _GP(plugins).size(); i++) {
+ if (_GP(plugins)[i].wantHook & event) {
+ retval = _GP(plugins)[i]._plugin->AGS_EngineOnEvent(event, data);
if (retval)
return retval;
}
@@ -819,10 +787,10 @@ NumberPtr pl_run_plugin_hooks(int event, NumberPtr data) {
}
int pl_run_plugin_debug_hooks(const char *scriptfile, int linenum) {
- int i, retval = 0;
- for (i = 0; i < numPlugins; i++) {
- if (plugins[i].wantHook & AGSE_SCRIPTDEBUG) {
- retval = plugins[i]._plugin->AGS_EngineDebugHook(scriptfile, linenum, 0);
+ int retval = 0;
+ for (uint i = 0; i < _GP(plugins).size(); i++) {
+ if (_GP(plugins)[i].wantHook & AGSE_SCRIPTDEBUG) {
+ retval = _GP(plugins)[i]._plugin->AGS_EngineDebugHook(scriptfile, linenum, 0);
if (retval)
return retval;
}
@@ -831,19 +799,20 @@ int pl_run_plugin_debug_hooks(const char *scriptfile, int linenum) {
}
void pl_run_plugin_init_gfx_hooks(const char *driverName, void *data) {
- for (int i = 0; i < numPlugins; i++) {
- plugins[i]._plugin->AGS_EngineInitGfx(driverName, data);
+ for (uint i = 0; i < _GP(plugins).size(); i++) {
+ _GP(plugins)[i]._plugin->AGS_EngineInitGfx(driverName, data);
}
}
Engine::GameInitError pl_register_plugins(const std::vector<Shared::PluginInfo> &infos) {
- numPlugins = 0;
+ _GP(plugins).clear();
+
for (size_t inf_index = 0; inf_index < infos.size(); ++inf_index) {
const Shared::PluginInfo &info = infos[inf_index];
String name = info.Name;
if (name.GetLast() == '!')
continue; // editor-only plugin, ignore it
- if (numPlugins == MAXPLUGINS)
+ if (_GP(plugins).size() == MAXPLUGINS)
return kGameInitErr_TooManyPlugins;
// AGS Editor currently saves plugin names in game data with
// ".dll" extension appended; we need to take care of that
@@ -855,7 +824,9 @@ Engine::GameInitError pl_register_plugins(const std::vector<Shared::PluginInfo>
// remove ".dll" from plugin's name
name.ClipRight(name_ext.GetLength());
- EnginePlugin *apl = &plugins[numPlugins++];
+ _GP(plugins).resize(_GP(plugins).size() + 1);
+ EnginePlugin *apl = &_GP(plugins).back();
+
// Copy plugin info
snprintf(apl->filename, sizeof(apl->filename), "%s", name.GetCStr());
if (info.DataLen) {
@@ -879,7 +850,7 @@ Engine::GameInitError pl_register_plugins(const std::vector<Shared::PluginInfo>
continue;
}
- apl->eiface.pluginId = numPlugins - 1;
+ apl->eiface.pluginId = _GP(plugins).size() - 1;
apl->eiface.version = PLUGIN_API_VERSION;
apl->wantHook = 0;
apl->available = true;
@@ -891,16 +862,16 @@ bool pl_is_plugin_loaded(const char *pl_name) {
if (!pl_name)
return false;
- for (int i = 0; i < numPlugins; ++i) {
- if (ags_stricmp(pl_name, plugins[i].filename) == 0)
- return plugins[i].available;
+ for (uint i = 0; i < _GP(plugins).size(); ++i) {
+ if (ags_stricmp(pl_name, _GP(plugins)[i].filename) == 0)
+ return _GP(plugins)[i].available;
}
return false;
}
bool pl_any_want_hook(int event) {
- for (int i = 0; i < numPlugins; ++i) {
- if (plugins[i].wantHook & event)
+ for (uint i = 0; i < _GP(plugins).size(); ++i) {
+ if (_GP(plugins)[i].wantHook & event)
return true;
}
return false;
diff --git a/engines/ags/plugins/ags_plugin.h b/engines/ags/plugins/ags_plugin.h
index 6bf09594ce..16e3d38608 100644
--- a/engines/ags/plugins/ags_plugin.h
+++ b/engines/ags/plugins/ags_plugin.h
@@ -35,6 +35,7 @@
#include "ags/shared/core/types.h"
#include "ags/shared/font/ags_font_renderer.h"
#include "ags/plugins/plugin_base.h"
+#include "ags/engine/util/library_scummvm.h"
namespace AGS3 {
@@ -67,13 +68,15 @@ typedef int HWND;
// MASK_REGIONS is interface version 11 and above only
#define MASK_REGIONS 4
+#define PLUGIN_FILENAME_MAX (49)
+
// **** WARNING: DO NOT ALTER THESE CLASSES IN ANY WAY!
// **** CHANGING THE ORDER OF THE FUNCTIONS OR ADDING ANY VARIABLES
// **** WILL CRASH THE SYSTEM.
struct AGSColor {
-unsigned char r, g, b;
-unsigned char padding;
+ unsigned char r, g, b;
+ unsigned char padding;
};
struct AGSGameOptions {
@@ -555,33 +558,31 @@ public:
AGSIFUNC(void) GetRenderStageDesc(AGSRenderStageDesc *desc);
};
-#ifdef THIS_IS_THE_PLUGIN
-
-#ifdef WINDOWS_VERSION
-#define DLLEXPORT extern "C" __declspec(dllexport)
-#else
-// MAC VERSION: compile with -fvisibility=hidden
-// gcc -dynamiclib -std=gnu99 agsplugin.c -fvisibility=hidden -o agsplugin.dylib
-#define DLLEXPORT extern "C" __attribute__((visibility("default")))
-#endif
-
-DLLEXPORT const char *AGS_GetPluginName(void);
-DLLEXPORT int AGS_EditorStartup(IAGSEditor *);
-DLLEXPORT void AGS_EditorShutdown(void);
-DLLEXPORT void AGS_EditorProperties(HWND);
-DLLEXPORT int AGS_EditorSaveGame(char *, int);
-DLLEXPORT void AGS_EditorLoadGame(char *, int);
-DLLEXPORT void AGS_EngineStartup(IAGSEngine *);
-DLLEXPORT void AGS_EngineShutdown(void);
-DLLEXPORT int AGS_EngineOnEvent(int, int);
-DLLEXPORT int AGS_EngineDebugHook(const char *, int, int);
-DLLEXPORT void AGS_EngineInitGfx(const char *driverID, void *data);
-// We export this to verify that we are an AGS Plugin
-DLLEXPORT int AGS_PluginV2() {
-return 1;
-}
-
-#endif // THIS_IS_THE_PLUGIN
+struct EnginePlugin {
+ char filename[PLUGIN_FILENAME_MAX + 1];
+ AGS::Engine::Library library;
+ Plugins::PluginBase *_plugin;
+ bool available;
+ char *savedata;
+ int savedatasize;
+ int wantHook;
+ int invalidatedRegion;
+
+ IAGSEngine eiface;
+ bool builtin;
+
+ EnginePlugin() {
+ filename[0] = 0;
+ wantHook = 0;
+ invalidatedRegion = 0;
+ savedata = nullptr;
+ savedatasize = 0;
+ builtin = false;
+ available = false;
+ eiface.version = 0;
+ eiface.pluginId = 0;
+ }
+};
extern void PluginSimulateMouseClick(int pluginButtonID);
diff --git a/engines/ags/plugins/plugin_engine.h b/engines/ags/plugins/plugin_engine.h
index f87e4ca972..7cdff2346a 100644
--- a/engines/ags/plugins/plugin_engine.h
+++ b/engines/ags/plugins/plugin_engine.h
@@ -35,8 +35,6 @@
namespace AGS3 {
-#define PLUGIN_FILENAME_MAX (49)
-
class IAGSEngine;
namespace AGS {
namespace Shared {
Commit: ecbda750a357d4bc279eb23fac1b77d38d5cf15e
https://github.com/scummvm/scummvm/commit/ecbda750a357d4bc279eb23fac1b77d38d5cf15e
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2021-07-18T17:07:02-07:00
Commit Message:
AGS: Fix loading plugins
Changed paths:
engines/ags/engine/util/library_scummvm.h
engines/ags/plugins/ags_plugin.cpp
diff --git a/engines/ags/engine/util/library_scummvm.h b/engines/ags/engine/util/library_scummvm.h
index 62e09c14bc..760ddaf4bd 100644
--- a/engines/ags/engine/util/library_scummvm.h
+++ b/engines/ags/engine/util/library_scummvm.h
@@ -34,10 +34,11 @@ namespace AGS {
namespace Engine {
class ScummVMLibrary : public BaseLibrary {
+private:
+ Plugins::PluginBase *_library = nullptr;
+
public:
- ScummVMLibrary()
- : _library(nullptr) {
- };
+ ScummVMLibrary() : BaseLibrary() {}
~ScummVMLibrary() override {
Unload();
@@ -67,8 +68,9 @@ public:
}
}
-private:
- Plugins::PluginBase *_library;
+ Plugins::PluginBase *getPlugin() const {
+ return _library;
+ }
};
diff --git a/engines/ags/plugins/ags_plugin.cpp b/engines/ags/plugins/ags_plugin.cpp
index 98002a5a24..4394f77933 100644
--- a/engines/ags/plugins/ags_plugin.cpp
+++ b/engines/ags/plugins/ags_plugin.cpp
@@ -842,6 +842,7 @@ Engine::GameInitError pl_register_plugins(const std::vector<Shared::PluginInfo>
String expect_filename = apl->library.GetFilenameForLib(apl->filename);
if (apl->library.Load(apl->filename)) {
+ apl->_plugin = apl->library.getPlugin();
AGS::Shared::Debug::Printf(kDbgMsg_Info, "Plugin '%s' loaded as '%s', resolving imports...", apl->filename, expect_filename.GetCStr());
} else {
More information about the Scummvm-git-logs
mailing list