[Scummvm-git-logs] scummvm master -> 800adbacf59aacb27e4c46a96dcfee539c2b5160
dreammaster
dreammaster at scummvm.org
Thu Mar 4 05:20:02 UTC 2021
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
800adbacf5 AGS: Fix crash calling AGSCreditz plugin method
Commit: 800adbacf59aacb27e4c46a96dcfee539c2b5160
https://github.com/scummvm/scummvm/commit/800adbacf59aacb27e4c46a96dcfee539c2b5160
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2021-03-03T21:18:32-08:00
Commit Message:
AGS: Fix crash calling AGSCreditz plugin method
The latest change to try and properly handle NumberPtr results
from plugin methods broke the passed parameters on methods with
a void return. To solve this once and for all, I changed all
plugin methods to be a void return, and added a _results field
as part of the passed params parameter
Changed paths:
engines/ags/engine/script/script_runtime.cpp
engines/ags/plugins/ags_blend/ags_blend.cpp
engines/ags/plugins/ags_blend/ags_blend.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_flashlight/ags_flashlight.cpp
engines/ags/plugins/ags_flashlight/ags_flashlight.h
engines/ags/plugins/ags_galaxy_steam/ags_blackwell_steam.cpp
engines/ags/plugins/ags_galaxy_steam/ags_blackwell_steam.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_joy/ags_joy.cpp
engines/ags/plugins/ags_joy/ags_joy.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_parallax/ags_parallax.cpp
engines/ags/plugins/ags_parallax/ags_parallax.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_sprite_font/ags_sprite_font.cpp
engines/ags/plugins/ags_sprite_font/ags_sprite_font.h
engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.cpp
engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.h
engines/ags/plugins/agsplugin.h
engines/ags/plugins/plugin_base.cpp
engines/ags/plugins/plugin_base.h
diff --git a/engines/ags/engine/script/script_runtime.cpp b/engines/ags/engine/script/script_runtime.cpp
index a3c5b662af..9c0c2d1659 100644
--- a/engines/ags/engine/script/script_runtime.cpp
+++ b/engines/ags/engine/script/script_runtime.cpp
@@ -175,7 +175,7 @@ int call_function(intptr_t addr, const RuntimeScriptValue *object, int numparm,
// The original AGS interpreter did a bunch of dodgy function pointers with
// varying numbers of parameters, which were all int64_t. To simply matters
// now that we only supported plugins implemented in code, and not DLLs,
- // we use a simplified Common::Array containing the parameters
+ // we use a simplified Common::Array containing the parameters and result
if (numparm > 9) {
cc_error("too many arguments in call to function");
@@ -187,8 +187,16 @@ int call_function(intptr_t addr, const RuntimeScriptValue *object, int numparm,
params.push_back(parm_value[i]);
// Call the method
- Plugins::PluginFunction fparam = (Plugins::PluginFunction)addr;
- return fparam(params);
+ Plugins::PluginMethod fparam = (Plugins::PluginMethod)addr;
+ fparam(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
+ // guard below will throw a wobbly if they're more than 32-bits
+ if ((int64)params._result._ptr > 0xffffffff)
+ error("Uhandled 64-bit pointer result from plugin method call");
+
+ return params._result;
}
}
diff --git a/engines/ags/plugins/ags_blend/ags_blend.cpp b/engines/ags/plugins/ags_blend/ags_blend.cpp
index 29b34bdf9b..5950c644e5 100644
--- a/engines/ags/plugins/ags_blend/ags_blend.cpp
+++ b/engines/ags/plugins/ags_blend/ags_blend.cpp
@@ -150,7 +150,7 @@ public:
#pragma endregion
-NumberPtr AGSBlend::GetAlpha(const ScriptMethodParams ¶ms) {
+void AGSBlend::GetAlpha(ScriptMethodParams ¶ms) {
PARAMS3(int, sprite, int, x, int, y);
BITMAP *engineSprite = _engine->GetSpriteGraphic(sprite);
@@ -161,10 +161,10 @@ NumberPtr AGSBlend::GetAlpha(const ScriptMethodParams ¶ms) {
_engine->ReleaseBitmapSurface(engineSprite);
- return alpha;
+ params._result = alpha;
}
-NumberPtr AGSBlend::PutAlpha(const ScriptMethodParams ¶ms) {
+void AGSBlend::PutAlpha(ScriptMethodParams ¶ms) {
PARAMS4(int, sprite, int, x, int, y, int, alpha);
BITMAP *engineSprite = _engine->GetSpriteGraphic(sprite);
@@ -179,14 +179,14 @@ NumberPtr AGSBlend::PutAlpha(const ScriptMethodParams ¶ms) {
_engine->ReleaseBitmapSurface(engineSprite);
- return alpha;
+ params._result = alpha;
}
int AGSBlend::xytolocale(int x, int y, int width) {
return (y * width + x);
}
-NumberPtr AGSBlend::HighPass(const ScriptMethodParams ¶ms) {
+void AGSBlend::HighPass(ScriptMethodParams ¶ms) {
PARAMS2(int, sprite, int, threshold);
BITMAP *src = _engine->GetSpriteGraphic(sprite);
int32 srcWidth, srcHeight;
@@ -214,11 +214,11 @@ NumberPtr AGSBlend::HighPass(const ScriptMethodParams ¶ms) {
}
- return 0;
+ params._result = 0;
}
-NumberPtr AGSBlend::Blur(const ScriptMethodParams ¶ms) {
+void AGSBlend::Blur(ScriptMethodParams ¶ms) {
PARAMS2(int, sprite, int, radius);
BITMAP *src = _engine->GetSpriteGraphic(sprite);
@@ -357,10 +357,10 @@ NumberPtr AGSBlend::Blur(const ScriptMethodParams ¶ms) {
delete srclongbuffer;
delete srccharbuffer;
- return 0;
+ params._result = 0;
}
-NumberPtr AGSBlend::DrawSprite(const ScriptMethodParams ¶ms) {
+void AGSBlend::DrawSprite(ScriptMethodParams ¶ms) {
PARAMS6(int, destination, int, sprite, int, x, int, y, int, DrawMode, int, trans);
trans = 100 - trans;
int32 srcWidth, srcHeight, destWidth, destHeight;
@@ -371,7 +371,11 @@ NumberPtr AGSBlend::DrawSprite(const ScriptMethodParams ¶ms) {
_engine->GetBitmapDimensions(src, &srcWidth, &srcHeight, nullptr);
_engine->GetBitmapDimensions(dest, &destWidth, &destHeight, nullptr);
- if (x > destWidth || y > destHeight || x + srcWidth < 0 || y + srcHeight < 0) return 1; // offscreen
+ if (x > destWidth || y > destHeight || x + srcWidth < 0 || y + srcHeight < 0) {
+ // offscreen
+ params._result = 1;
+ return;
+ }
unsigned char **srccharbuffer = _engine->GetRawBitmapSurface(src);
unsigned int **srclongbuffer = (unsigned int **)srccharbuffer;
@@ -578,11 +582,11 @@ NumberPtr AGSBlend::DrawSprite(const ScriptMethodParams ¶ms) {
_engine->ReleaseBitmapSurface(src);
_engine->ReleaseBitmapSurface(dest);
_engine->NotifySpriteUpdated(destination);
- return 0;
+ params._result = 0;
}
-NumberPtr AGSBlend::DrawAdd(const ScriptMethodParams ¶ms) {
+void AGSBlend::DrawAdd(ScriptMethodParams ¶ms) {
PARAMS5(int, destination, int, sprite, int, x, int, y, float, scale);
int32 srcWidth, srcHeight, destWidth, destHeight;
@@ -592,7 +596,11 @@ NumberPtr AGSBlend::DrawAdd(const ScriptMethodParams ¶ms) {
_engine->GetBitmapDimensions(src, &srcWidth, &srcHeight, nullptr);
_engine->GetBitmapDimensions(dest, &destWidth, &destHeight, nullptr);
- if (x > destWidth || y > destHeight) return 1; // offscreen
+ if (x > destWidth || y > destHeight) {
+ // offscreen
+ params._result = 1;
+ return;
+ }
unsigned char **srccharbuffer = _engine->GetRawBitmapSurface(src);
unsigned int **srclongbuffer = (unsigned int **)srccharbuffer;
@@ -653,10 +661,10 @@ NumberPtr AGSBlend::DrawAdd(const ScriptMethodParams ¶ms) {
_engine->ReleaseBitmapSurface(dest);
_engine->NotifySpriteUpdated(destination);
- return 0;
+ params._result = 0;
}
-NumberPtr AGSBlend::DrawAlpha(const ScriptMethodParams ¶ms) {
+void AGSBlend::DrawAlpha(ScriptMethodParams ¶ms) {
PARAMS5(int, destination, int, sprite, int, x, int, y, int, trans);
trans = 100 - trans;
@@ -668,7 +676,11 @@ NumberPtr AGSBlend::DrawAlpha(const ScriptMethodParams ¶ms) {
_engine->GetBitmapDimensions(src, &srcWidth, &srcHeight, nullptr);
_engine->GetBitmapDimensions(dest, &destWidth, &destHeight, nullptr);
- if (x > destWidth || y > destHeight) return 1; // offscreen
+ if (x > destWidth || y > destHeight) {
+ // offscreen
+ params._result = 1;
+ return;
+ }
unsigned char **srccharbuffer = _engine->GetRawBitmapSurface(src);
unsigned int **srclongbuffer = (unsigned int **)srccharbuffer;
@@ -722,7 +734,7 @@ NumberPtr AGSBlend::DrawAlpha(const ScriptMethodParams ¶ms) {
_engine->ReleaseBitmapSurface(dest);
_engine->NotifySpriteUpdated(destination);
- return 0;
+ params._result = 0;
}
} // namespace AGSBlend
diff --git a/engines/ags/plugins/ags_blend/ags_blend.h b/engines/ags/plugins/ags_blend/ags_blend.h
index 9e114420ec..b6f7a174cb 100644
--- a/engines/ags/plugins/ags_blend/ags_blend.h
+++ b/engines/ags/plugins/ags_blend/ags_blend.h
@@ -44,23 +44,23 @@ private:
/**
* Gets the alpha value at coords x,y
*/
- static NumberPtr GetAlpha(const ScriptMethodParams ¶ms);
+ static void GetAlpha(ScriptMethodParams ¶ms);
/**
* Sets the alpha value at coords x,y
*/
- static NumberPtr PutAlpha(const ScriptMethodParams ¶ms);
+ static void PutAlpha(ScriptMethodParams ¶ms);
/**
* Translates index from a 2D array to a 1D array
*/
static int xytolocale(int x, int y, int width);
- static NumberPtr HighPass(const ScriptMethodParams ¶ms);
- static NumberPtr Blur(const ScriptMethodParams ¶ms);
- static NumberPtr DrawSprite(const ScriptMethodParams ¶ms);
- static NumberPtr DrawAdd(const ScriptMethodParams ¶ms);
- static NumberPtr DrawAlpha(const ScriptMethodParams ¶ms);
+ 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);
public:
AGSBlend();
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz1.cpp b/engines/ags/plugins/ags_creditz/ags_creditz1.cpp
index 21b7e5fef3..1fdddf2d29 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz1.cpp
+++ b/engines/ags/plugins/ags_creditz/ags_creditz1.cpp
@@ -65,7 +65,7 @@ void AGSCreditz1::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD(IsStaticCreditsFinished);
}
-void AGSCreditz1::SetCredit(const ScriptMethodParams ¶ms) {
+void AGSCreditz1::SetCredit(ScriptMethodParams ¶ms) {
PARAMS7(int, ID, string, credit, int, colour, int, font, int, center, int, xpos, int, generateoutline);
if (ID >= (int)_state->_credits[0].size())
@@ -81,7 +81,7 @@ void AGSCreditz1::SetCredit(const ScriptMethodParams ¶ms) {
c._colorHeight = colour;
}
-void AGSCreditz1::ScrollCredits(const ScriptMethodParams ¶ms) {
+void AGSCreditz1::ScrollCredits(ScriptMethodParams ¶ms) {
PARAMS7(int, onoff, int, speed, int, fromY, int, toY, int, isautom, int, wait, int, resolution);
if (onoff == 1) {
@@ -108,84 +108,84 @@ void AGSCreditz1::ScrollCredits(const ScriptMethodParams ¶ms) {
}
}
-NumberPtr AGSCreditz1::GetCredit(const ScriptMethodParams ¶ms) {
+void AGSCreditz1::GetCredit(ScriptMethodParams ¶ms) {
PARAMS1(int, ID);
- return (_state->_credits[0][ID]._text == IMAGE_TEXT) ?
+ params._result = (_state->_credits[0][ID]._text == IMAGE_TEXT) ?
"image" : _state->_credits[0][ID]._text.c_str();
}
-NumberPtr AGSCreditz1::IsCreditScrollingFinished(const ScriptMethodParams ¶ms) {
- return true;
+void AGSCreditz1::IsCreditScrollingFinished(ScriptMethodParams ¶ms) {
+ params._result = true;
}
-void AGSCreditz1::SetCreditImage(const ScriptMethodParams ¶ms) {
+void AGSCreditz1::SetCreditImage(ScriptMethodParams ¶ms) {
//PARAMS5(int, ID, int, Slot, int, center, int, xpos, int, pixtonext);
}
-void AGSCreditz1::PauseScroll(const ScriptMethodParams ¶ms) {
+void AGSCreditz1::PauseScroll(ScriptMethodParams ¶ms) {
//PARAMS1(int, onoff);
}
-void AGSCreditz1::ScrollReset(const ScriptMethodParams ¶ms) {
+void AGSCreditz1::ScrollReset(ScriptMethodParams ¶ms) {
}
-void AGSCreditz1::SetEmptyLineHeight(const ScriptMethodParams ¶ms) {
+void AGSCreditz1::SetEmptyLineHeight(ScriptMethodParams ¶ms) {
//PARAMS1(int, Height);
}
-NumberPtr AGSCreditz1::GetEmptyLineHeight(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSCreditz1::GetEmptyLineHeight(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-void AGSCreditz1::SetStaticCredit(const ScriptMethodParams ¶ms) {
+void AGSCreditz1::SetStaticCredit(ScriptMethodParams ¶ms) {
//PARAMS8(int, ID, int, x, int, y, int, creditfont, int, creditcolour, int, centered, int, generateoutline, string, credit);
}
-NumberPtr AGSCreditz1::GetStaticCredit(const ScriptMethodParams ¶ms) {
+void AGSCreditz1::GetStaticCredit(ScriptMethodParams ¶ms) {
//PARAMS1(int, ID);
- return NumberPtr();
+ params._result = NumberPtr();
}
-void AGSCreditz1::StartEndStaticCredits(const ScriptMethodParams ¶ms) {
+void AGSCreditz1::StartEndStaticCredits(ScriptMethodParams ¶ms) {
//PARAMS2(int, onoff, int, res);
}
-NumberPtr AGSCreditz1::GetCurrentStaticCredit(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSCreditz1::GetCurrentStaticCredit(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-void AGSCreditz1::SetDefaultStaticDelay(const ScriptMethodParams ¶ms) {
+void AGSCreditz1::SetDefaultStaticDelay(ScriptMethodParams ¶ms) {
//PARAMS1(int, Cyclesperchar);
}
-void AGSCreditz1::SetStaticPause(const ScriptMethodParams ¶ms) {
+void AGSCreditz1::SetStaticPause(ScriptMethodParams ¶ms) {
//PARAMS2(int, ID, int, length);
}
-void AGSCreditz1::SetStaticCreditTitle(const ScriptMethodParams ¶ms) {
+void AGSCreditz1::SetStaticCreditTitle(ScriptMethodParams ¶ms) {
//PARAMS8(int, ID, int, x, int, y, int, titlefont, int, titlecolour, int, centered, int, generateoutline, string, title);
}
-void AGSCreditz1::ShowStaticCredit(const ScriptMethodParams ¶ms) {
+void AGSCreditz1::ShowStaticCredit(ScriptMethodParams ¶ms) {
//PARAMS6(int, ID, int, time, int, style, int, transtime, int, sound, int, resolution);
}
-void AGSCreditz1::StaticReset(const ScriptMethodParams ¶ms) {
+void AGSCreditz1::StaticReset(ScriptMethodParams ¶ms) {
}
-NumberPtr AGSCreditz1::GetStaticCreditTitle(const ScriptMethodParams ¶ms) {
+void AGSCreditz1::GetStaticCreditTitle(ScriptMethodParams ¶ms) {
//PARAMS1(int, ID);
- return NumberPtr();
+ params._result = NumberPtr();
}
-void AGSCreditz1::SetStaticCreditImage(const ScriptMethodParams ¶ms) {
+void AGSCreditz1::SetStaticCreditImage(ScriptMethodParams ¶ms) {
//int ID, int x, int y, int Slot, int Hcentered, int Vcentered, int time) {
}
-NumberPtr AGSCreditz1::IsStaticCreditsFinished(const ScriptMethodParams ¶ms) {
- return true;
+void AGSCreditz1::IsStaticCreditsFinished(ScriptMethodParams ¶ms) {
+ params._result = true;
}
} // namespace AGSCreditz
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz1.h b/engines/ags/plugins/ags_creditz/ags_creditz1.h
index dd64208a59..87df63fae3 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz1.h
+++ b/engines/ags/plugins/ags_creditz/ags_creditz1.h
@@ -34,27 +34,27 @@ private:
static const char *AGS_GetPluginName();
static void AGS_EngineStartup(IAGSEngine *engine);
- static void SetCredit(const ScriptMethodParams ¶ms);
- static void ScrollCredits(const ScriptMethodParams ¶ms);
- static NumberPtr GetCredit(const ScriptMethodParams ¶ms);
- static NumberPtr IsCreditScrollingFinished(const ScriptMethodParams ¶ms);
- static void SetCreditImage(const ScriptMethodParams ¶ms);
- static void PauseScroll(const ScriptMethodParams ¶ms);
- static void ScrollReset(const ScriptMethodParams ¶ms);
- static void SetEmptyLineHeight(const ScriptMethodParams ¶ms);
- static NumberPtr GetEmptyLineHeight(const ScriptMethodParams ¶ms);
- static void SetStaticCredit(const ScriptMethodParams ¶ms);
- static NumberPtr GetStaticCredit(const ScriptMethodParams ¶ms);
- static void StartEndStaticCredits(const ScriptMethodParams ¶ms);
- static NumberPtr GetCurrentStaticCredit(const ScriptMethodParams ¶ms);
- static void SetDefaultStaticDelay(const ScriptMethodParams ¶ms);
- static void SetStaticPause(const ScriptMethodParams ¶ms);
- static void SetStaticCreditTitle(const ScriptMethodParams ¶ms);
- static void ShowStaticCredit(const ScriptMethodParams ¶ms);
- static void StaticReset(const ScriptMethodParams ¶ms);
- static NumberPtr GetStaticCreditTitle(const ScriptMethodParams ¶ms);
- static void SetStaticCreditImage(const ScriptMethodParams ¶ms);
- static NumberPtr IsStaticCreditsFinished(const ScriptMethodParams ¶ms);
+ 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);
public:
AGSCreditz1();
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz2.cpp b/engines/ags/plugins/ags_creditz/ags_creditz2.cpp
index b0a5f812a5..5ab3911a52 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz2.cpp
+++ b/engines/ags/plugins/ags_creditz/ags_creditz2.cpp
@@ -63,7 +63,7 @@ void AGSCreditz2::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD(GetCurrentStaticCredit);
}
-void AGSCreditz2::RunCreditSequence(const ScriptMethodParams ¶ms) {
+void AGSCreditz2::RunCreditSequence(ScriptMethodParams ¶ms) {
PARAMS1(int, sequence);
if (!_state->_creditsRunning) {
@@ -92,7 +92,7 @@ void AGSCreditz2::RunCreditSequence(const ScriptMethodParams ¶ms) {
}
}
-void AGSCreditz2::SetCredit(const ScriptMethodParams ¶ms) {
+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);
@@ -109,20 +109,20 @@ void AGSCreditz2::SetCredit(const ScriptMethodParams ¶ms) {
c._outline = true;
}
-NumberPtr AGSCreditz2::GetCredit(const ScriptMethodParams ¶ms) {
+void AGSCreditz2::GetCredit(ScriptMethodParams ¶ms) {
PARAMS2(int, sequence, int, ID);
- return _state->_credits[sequence][ID]._text.c_str();
+ params._result = _state->_credits[sequence][ID]._text.c_str();
}
-void AGSCreditz2::CreditsSettings(const ScriptMethodParams ¶ms) {
+void AGSCreditz2::CreditsSettings(ScriptMethodParams ¶ms) {
PARAMS1(int, emptylineheight);
if (emptylineheight >= 0)
_state->_emptyLineHeight = emptylineheight;
}
-void AGSCreditz2::SequenceSettings(const ScriptMethodParams ¶ms) {
+void AGSCreditz2::SequenceSettings(ScriptMethodParams ¶ms) {
PARAMS6(int, sequence, int, startpoint, int, endPoint, int, speed, int, automatic, int, endwait);
_state->_seqSettings[sequence].startpoint = startpoint;
@@ -132,24 +132,24 @@ void AGSCreditz2::SequenceSettings(const ScriptMethodParams ¶ms) {
_state->_seqSettings[sequence].endwait = endwait;
}
-NumberPtr AGSCreditz2::IsSequenceFinished(const ScriptMethodParams ¶ms) {
+void AGSCreditz2::IsSequenceFinished(ScriptMethodParams ¶ms) {
PARAMS1(int, sequence);
if (_state->_seqSettings[sequence].finished) {
_state->_seqSettings[sequence].finished = false;
- return 1;
+ params._result = 1;
+ } else {
+ params._result = 0;
}
-
- return 0;
}
-void AGSCreditz2::PauseScrolling(const ScriptMethodParams ¶ms) {
+void AGSCreditz2::PauseScrolling(ScriptMethodParams ¶ms) {
if (_state->_creditsRunning) {
_state->_paused = !_state->_paused;
}
}
-void AGSCreditz2::SetCreditImage(const ScriptMethodParams ¶ms) {
+void AGSCreditz2::SetCreditImage(ScriptMethodParams ¶ms) {
PARAMS5(int, sequence, int, line, int, xPos, int, slot, int, height);
assert(sequence >= 0 && sequence <= 10);
@@ -163,7 +163,7 @@ void AGSCreditz2::SetCreditImage(const ScriptMethodParams ¶ms) {
_state->_credits[sequence][line]._colorHeight = height;
}
-void AGSCreditz2::ResetSequence(const ScriptMethodParams ¶ms) {
+void AGSCreditz2::ResetSequence(ScriptMethodParams ¶ms) {
PARAMS1(int, seqtype);
for (int i = 0; i < 10; ++i) {
@@ -176,7 +176,7 @@ void AGSCreditz2::ResetSequence(const ScriptMethodParams ¶ms) {
}
}
-void AGSCreditz2::SetStaticCredit(const ScriptMethodParams ¶ms) {
+void AGSCreditz2::SetStaticCredit(ScriptMethodParams ¶ms) {
PARAMS8(int, sequence, int, id, string, credit, int, xPos, int, yPos,
int, font, int, color, int, genOutline);
@@ -194,7 +194,7 @@ void AGSCreditz2::SetStaticCredit(const ScriptMethodParams ¶ms) {
_state->_stCredits[sequence][id].outline = true;
}
-void AGSCreditz2::SetStaticCreditTitle(const ScriptMethodParams ¶ms) {
+void AGSCreditz2::SetStaticCreditTitle(ScriptMethodParams ¶ms) {
PARAMS8(int, sequence, int, id, string, title, int, xPos, int, yPos,
int, font, int, color, int, genOutline);
@@ -212,7 +212,7 @@ void AGSCreditz2::SetStaticCreditTitle(const ScriptMethodParams ¶ms) {
_state->_stCredits[sequence][id].title_outline = true;
}
-void AGSCreditz2::SetStaticPause(const ScriptMethodParams ¶ms) {
+void AGSCreditz2::SetStaticPause(ScriptMethodParams ¶ms) {
PARAMS3(int, sequence, int, id, int, length);
assert(sequence >= 0 && sequence <= 10);
@@ -222,7 +222,7 @@ void AGSCreditz2::SetStaticPause(const ScriptMethodParams ¶ms) {
_state->_stCredits[sequence][id].pause = length;
}
-void AGSCreditz2::RunStaticCreditSequence(const ScriptMethodParams ¶ms) {
+void AGSCreditz2::RunStaticCreditSequence(ScriptMethodParams ¶ms) {
PARAMS2(int, sequence, int, speed);
if (!_state->_creditsRunning) {
@@ -245,16 +245,16 @@ void AGSCreditz2::RunStaticCreditSequence(const ScriptMethodParams ¶ms) {
}
}
-NumberPtr AGSCreditz2::IsStaticSequenceFinished(const ScriptMethodParams ¶ms) {
+void AGSCreditz2::IsStaticSequenceFinished(ScriptMethodParams ¶ms) {
PARAMS1(int, sequence);
int result = (_state->_stSeqSettings[sequence].finished) ? 1 : 0;
_state->_stSeqSettings[sequence].finished = false;
- return result;
+ params._result = result;
}
-void AGSCreditz2::ShowStaticCredit(const ScriptMethodParams ¶ms) {
+void AGSCreditz2::ShowStaticCredit(ScriptMethodParams ¶ms) {
PARAMS6(int, sequence, int, id, int, time, int, style,
int, styleSettings1, int, styleSettings2);
@@ -274,7 +274,7 @@ void AGSCreditz2::ShowStaticCredit(const ScriptMethodParams ¶ms) {
draw();
}
-void AGSCreditz2::SetStaticImage(const ScriptMethodParams ¶ms) {
+void AGSCreditz2::SetStaticImage(ScriptMethodParams ¶ms) {
PARAMS6(int, sequence, int, id, int, slot, int, xPos, int, yPos, int, length);
assert(sequence >= 0 && sequence < 10);
@@ -288,12 +288,12 @@ void AGSCreditz2::SetStaticImage(const ScriptMethodParams ¶ms) {
_state->_stCredits[sequence][id].image_time = length;
}
-NumberPtr AGSCreditz2::GetCurrentStaticCredit(const ScriptMethodParams ¶ms) {
+void AGSCreditz2::GetCurrentStaticCredit(ScriptMethodParams ¶ms) {
int result = -1;
if (_state->_creditsRunning && _state->_staticCredits)
result = _state->_currentStatic;
- return result;
+ params._result = result;
}
void AGSCreditz2::calculateSequenceHeight(int sequence) {
diff --git a/engines/ags/plugins/ags_creditz/ags_creditz2.h b/engines/ags/plugins/ags_creditz/ags_creditz2.h
index 4fcdcb76e4..9b9e4fb02b 100644
--- a/engines/ags/plugins/ags_creditz/ags_creditz2.h
+++ b/engines/ags/plugins/ags_creditz/ags_creditz2.h
@@ -39,24 +39,24 @@ private:
static const char *AGS_GetPluginName();
static void AGS_EngineStartup(IAGSEngine *engine);
- static void RunCreditSequence(const ScriptMethodParams ¶ms);
- static void SetCredit(const ScriptMethodParams ¶ms);
- static NumberPtr GetCredit(const ScriptMethodParams ¶ms);
- static void CreditsSettings(const ScriptMethodParams ¶ms);
- static void SequenceSettings(const ScriptMethodParams ¶ms);
- static NumberPtr IsSequenceFinished(const ScriptMethodParams ¶ms);
- static void PauseScrolling(const ScriptMethodParams ¶ms);
- static void SetCreditImage(const ScriptMethodParams ¶ms);
- static void ResetSequence(const ScriptMethodParams ¶ms);
+ 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);
- static void SetStaticCredit(const ScriptMethodParams ¶ms);
- static void SetStaticCreditTitle(const ScriptMethodParams ¶ms);
- static void SetStaticPause(const ScriptMethodParams ¶ms);
- static void RunStaticCreditSequence(const ScriptMethodParams ¶ms);
- static NumberPtr IsStaticSequenceFinished(const ScriptMethodParams ¶ms);
- static void ShowStaticCredit(const ScriptMethodParams ¶ms);
- static void SetStaticImage(const ScriptMethodParams ¶ms);
- static NumberPtr GetCurrentStaticCredit(const 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);
static void makeMask(int sequence);
static void drawMask(int sequence, int getput);
diff --git a/engines/ags/plugins/ags_flashlight/ags_flashlight.cpp b/engines/ags/plugins/ags_flashlight/ags_flashlight.cpp
index 7b2b357b88..8581087ed6 100644
--- a/engines/ags/plugins/ags_flashlight/ags_flashlight.cpp
+++ b/engines/ags/plugins/ags_flashlight/ags_flashlight.cpp
@@ -171,7 +171,7 @@ void AGSFlashlight::AGS_EngineStartup(IAGSEngine *engine) {
void AGSFlashlight::AGS_EngineShutdown() {
}
-NumberPtr AGSFlashlight::AGS_EngineOnEvent(int event, NumberPtr data) {
+int64 AGSFlashlight::AGS_EngineOnEvent(int event, NumberPtr data) {
if (event == AGSE_PREGUIDRAW) {
Update();
} else if (event == AGSE_RESTOREGAME) {
@@ -569,7 +569,7 @@ void AGSFlashlight::syncGame(Serializer &s) {
// ************ AGS Interface ***************
// ********************************************
-void AGSFlashlight::SetFlashlightTint(const ScriptMethodParams ¶ms) {
+void AGSFlashlight::SetFlashlightTint(ScriptMethodParams ¶ms) {
PARAMS3(int, RedTint, int, GreenTint, int, BlueTint);
ClipToRange(RedTint, -31, 31);
ClipToRange(GreenTint, -31, 31);
@@ -583,27 +583,27 @@ void AGSFlashlight::SetFlashlightTint(const ScriptMethodParams ¶ms) {
g_BlueTint = BlueTint;
}
-NumberPtr AGSFlashlight::GetFlashlightTintRed(const ScriptMethodParams ¶ms) {
- return g_RedTint;
+void AGSFlashlight::GetFlashlightTintRed(ScriptMethodParams ¶ms) {
+ params._result = g_RedTint;
}
-NumberPtr AGSFlashlight::GetFlashlightTintGreen(const ScriptMethodParams ¶ms) {
- return g_GreenTint;
+void AGSFlashlight::GetFlashlightTintGreen(ScriptMethodParams ¶ms) {
+ params._result = g_GreenTint;
}
-NumberPtr AGSFlashlight::GetFlashlightTintBlue(const ScriptMethodParams ¶ms) {
- return g_BlueTint;
+void AGSFlashlight::GetFlashlightTintBlue(ScriptMethodParams ¶ms) {
+ params._result = g_BlueTint;
}
-NumberPtr AGSFlashlight::GetFlashlightMinLightLevel(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSFlashlight::GetFlashlightMinLightLevel(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSFlashlight::GetFlashlightMaxLightLevel(const ScriptMethodParams ¶ms) {
- return 100;
+void AGSFlashlight::GetFlashlightMaxLightLevel(ScriptMethodParams ¶ms) {
+ params._result = 100;
}
-void AGSFlashlight::SetFlashlightDarkness(const ScriptMethodParams ¶ms) {
+void AGSFlashlight::SetFlashlightDarkness(ScriptMethodParams ¶ms) {
PARAMS1(int, LightLevel);
ClipToRange(LightLevel, 0, 100);
@@ -616,11 +616,11 @@ void AGSFlashlight::SetFlashlightDarkness(const ScriptMethodParams ¶ms) {
}
}
-NumberPtr AGSFlashlight::GetFlashlightDarkness(const ScriptMethodParams ¶ms) {
- return g_DarknessLightLevel;
+void AGSFlashlight::GetFlashlightDarkness(ScriptMethodParams ¶ms) {
+ params._result = g_DarknessLightLevel;
}
-void AGSFlashlight::SetFlashlightDarknessSize(const ScriptMethodParams ¶ms) {
+void AGSFlashlight::SetFlashlightDarknessSize(ScriptMethodParams ¶ms) {
PARAMS1(int, Size);
if (Size != g_DarknessSize) {
g_BitmapMustBeUpdated = true;
@@ -629,12 +629,12 @@ void AGSFlashlight::SetFlashlightDarknessSize(const ScriptMethodParams ¶ms)
}
}
-NumberPtr AGSFlashlight::GetFlashlightDarknessSize(const ScriptMethodParams ¶ms) {
- return g_DarknessSize;
+void AGSFlashlight::GetFlashlightDarknessSize(ScriptMethodParams ¶ms) {
+ params._result = g_DarknessSize;
}
-void AGSFlashlight::SetFlashlightBrightness(const ScriptMethodParams ¶ms) {
+void AGSFlashlight::SetFlashlightBrightness(ScriptMethodParams ¶ms) {
PARAMS1(int, LightLevel);
ClipToRange(LightLevel, 0, 100);
@@ -647,11 +647,11 @@ void AGSFlashlight::SetFlashlightBrightness(const ScriptMethodParams ¶ms) {
}
}
-NumberPtr AGSFlashlight::GetFlashlightBrightness(const ScriptMethodParams ¶ms) {
- return g_BrightnessLightLevel;
+void AGSFlashlight::GetFlashlightBrightness(ScriptMethodParams ¶ms) {
+ params._result = g_BrightnessLightLevel;
}
-void AGSFlashlight::SetFlashlightBrightnessSize(const ScriptMethodParams ¶ms) {
+void AGSFlashlight::SetFlashlightBrightnessSize(ScriptMethodParams ¶ms) {
PARAMS1(int, Size);
if (Size != g_BrightnessSize) {
g_BitmapMustBeUpdated = true;
@@ -659,34 +659,34 @@ void AGSFlashlight::SetFlashlightBrightnessSize(const ScriptMethodParams ¶ms
}
}
-NumberPtr AGSFlashlight::GetFlashlightBrightnessSize(const ScriptMethodParams ¶ms) {
- return g_BrightnessSize;
+void AGSFlashlight::GetFlashlightBrightnessSize(ScriptMethodParams ¶ms) {
+ params._result = g_BrightnessSize;
}
-void AGSFlashlight::SetFlashlightPosition(const ScriptMethodParams ¶ms) {
+void AGSFlashlight::SetFlashlightPosition(ScriptMethodParams ¶ms) {
PARAMS2(int, X, int, Y);
g_FlashlightX = X;
g_FlashlightY = Y;
}
-NumberPtr AGSFlashlight::GetFlashlightPositionX(const ScriptMethodParams ¶ms) {
- return g_FlashlightX;
+void AGSFlashlight::GetFlashlightPositionX(ScriptMethodParams ¶ms) {
+ params._result = g_FlashlightX;
}
-NumberPtr AGSFlashlight::GetFlashlightPositionY(const ScriptMethodParams ¶ms) {
- return g_FlashlightY;
+void AGSFlashlight::GetFlashlightPositionY(ScriptMethodParams ¶ms) {
+ params._result = g_FlashlightY;
}
-void AGSFlashlight::SetFlashlightFollowMouse(const ScriptMethodParams ¶ms) {
+void AGSFlashlight::SetFlashlightFollowMouse(ScriptMethodParams ¶ms) {
PARAMS1(int, OnOff);
g_FlashlightFollowMouse = (OnOff != 0);
}
-NumberPtr AGSFlashlight::GetFlashlightFollowMouse(const ScriptMethodParams ¶ms) {
- return g_FlashlightFollowMouse ? 1 : 0;
+void AGSFlashlight::GetFlashlightFollowMouse(ScriptMethodParams ¶ms) {
+ params._result = g_FlashlightFollowMouse ? 1 : 0;
}
-void AGSFlashlight::SetFlashlightFollowCharacter(const ScriptMethodParams ¶ms) {
+void AGSFlashlight::SetFlashlightFollowCharacter(ScriptMethodParams ¶ms) {
PARAMS5(int, CharacterId, int, dx, int, dy, int, horz, int, vert);
g_FollowCharacterId = CharacterId;
g_FollowCharacterDx = dx;
@@ -697,33 +697,33 @@ void AGSFlashlight::SetFlashlightFollowCharacter(const ScriptMethodParams ¶m
g_FollowCharacter = _engine->GetCharacter(CharacterId);
}
-NumberPtr AGSFlashlight::GetFlashlightFollowCharacter(const ScriptMethodParams ¶ms) {
- return g_FollowCharacterId;
+void AGSFlashlight::GetFlashlightFollowCharacter(ScriptMethodParams ¶ms) {
+ params._result = g_FollowCharacterId;
}
-NumberPtr AGSFlashlight::GetFlashlightCharacterDX(const ScriptMethodParams ¶ms) {
- return g_FollowCharacterDx;
+void AGSFlashlight::GetFlashlightCharacterDX(ScriptMethodParams ¶ms) {
+ params._result = g_FollowCharacterDx;
}
-NumberPtr AGSFlashlight::GetFlashlightCharacterDY(const ScriptMethodParams ¶ms) {
- return g_FollowCharacterDy;
+void AGSFlashlight::GetFlashlightCharacterDY(ScriptMethodParams ¶ms) {
+ params._result = g_FollowCharacterDy;
}
-NumberPtr AGSFlashlight::GetFlashlightCharacterHorz(const ScriptMethodParams ¶ms) {
- return g_FollowCharacterHorz;
+void AGSFlashlight::GetFlashlightCharacterHorz(ScriptMethodParams ¶ms) {
+ params._result = g_FollowCharacterHorz;
}
-NumberPtr AGSFlashlight::GetFlashlightCharacterVert(const ScriptMethodParams ¶ms) {
- return g_FollowCharacterVert;
+void AGSFlashlight::GetFlashlightCharacterVert(ScriptMethodParams ¶ms) {
+ params._result = g_FollowCharacterVert;
}
-void AGSFlashlight::SetFlashlightMask(const ScriptMethodParams ¶ms) {
+void AGSFlashlight::SetFlashlightMask(ScriptMethodParams ¶ms) {
//PARAMS1(int, SpriteSlot);
// Not implemented.
}
-NumberPtr AGSFlashlight::GetFlashlightMask(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSFlashlight::GetFlashlightMask(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
} // namespace AGSFlashlight
diff --git a/engines/ags/plugins/ags_flashlight/ags_flashlight.h b/engines/ags/plugins/ags_flashlight/ags_flashlight.h
index b4ba748531..5b048ecada 100644
--- a/engines/ags/plugins/ags_flashlight/ags_flashlight.h
+++ b/engines/ags/plugins/ags_flashlight/ags_flashlight.h
@@ -68,7 +68,7 @@ private:
static const char *AGS_GetPluginName();
static void AGS_EngineStartup(IAGSEngine *engine);
static void AGS_EngineShutdown();
- static NumberPtr AGS_EngineOnEvent(int event, NumberPtr data);
+ static int64 AGS_EngineOnEvent(int event, NumberPtr data);
private:
/**
@@ -88,33 +88,33 @@ private:
static void Update();
static void syncGame(Serializer &s);
- static void SetFlashlightTint(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightTintRed(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightTintGreen(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightTintBlue(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightMinLightLevel(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightMaxLightLevel(const ScriptMethodParams ¶ms);
- static void SetFlashlightDarkness(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightDarkness(const ScriptMethodParams ¶ms);
- static void SetFlashlightDarknessSize(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightDarknessSize(const ScriptMethodParams ¶ms);
- static void SetFlashlightBrightness(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightBrightness(const ScriptMethodParams ¶ms);
- static void SetFlashlightBrightnessSize(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightBrightnessSize(const ScriptMethodParams ¶ms);
- static void SetFlashlightPosition(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightPositionX(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightPositionY(const ScriptMethodParams ¶ms);
- static void SetFlashlightFollowMouse(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightFollowMouse(const ScriptMethodParams ¶ms);
- static void SetFlashlightFollowCharacter(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightFollowCharacter(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightCharacterDX(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightCharacterDY(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightCharacterHorz(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightCharacterVert(const ScriptMethodParams ¶ms);
- static void SetFlashlightMask(const ScriptMethodParams ¶ms);
- static NumberPtr GetFlashlightMask(const ScriptMethodParams ¶ms);
+ 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);
public:
AGSFlashlight();
};
diff --git a/engines/ags/plugins/ags_galaxy_steam/ags_blackwell_steam.cpp b/engines/ags/plugins/ags_galaxy_steam/ags_blackwell_steam.cpp
index c1969b7ced..6b750f4df4 100644
--- a/engines/ags/plugins/ags_galaxy_steam/ags_blackwell_steam.cpp
+++ b/engines/ags/plugins/ags_galaxy_steam/ags_blackwell_steam.cpp
@@ -30,8 +30,8 @@ AGSBlackwellSteam::AGSBlackwellSteam() : AGSSteam() {
DLL_METHOD(AGS_EngineStartup);
}
-NumberPtr AGSBlackwellSteam::AddAchievement(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSBlackwellSteam::AddAchievement(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
void AGSBlackwellSteam::AGS_EngineStartup(IAGSEngine *engine) {
diff --git a/engines/ags/plugins/ags_galaxy_steam/ags_blackwell_steam.h b/engines/ags/plugins/ags_galaxy_steam/ags_blackwell_steam.h
index 15594cb491..abd536614c 100644
--- a/engines/ags/plugins/ags_galaxy_steam/ags_blackwell_steam.h
+++ b/engines/ags/plugins/ags_galaxy_steam/ags_blackwell_steam.h
@@ -32,7 +32,7 @@ namespace AGSGalaxySteam {
class AGSBlackwellSteam : public AGSSteam {
private:
static void AGS_EngineStartup(IAGSEngine *engine);
- static NumberPtr AddAchievement(const ScriptMethodParams ¶ms);
+ static void AddAchievement(ScriptMethodParams ¶ms);
public:
AGSBlackwellSteam();
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 bd69c44878..9f82977157 100644
--- a/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.cpp
+++ b/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.cpp
@@ -56,81 +56,81 @@ void AGS2Client::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(AGS2Client::Initialize^2, Initialize);
}
-NumberPtr AGS2Client::IsAchievementAchieved(const ScriptMethodParams ¶ms) {
- return false;
+void AGS2Client::IsAchievementAchieved(ScriptMethodParams ¶ms) {
+ params._result = false;
}
-NumberPtr AGS2Client::SetAchievementAchieved(const ScriptMethodParams ¶ms) {
- return false;
+void AGS2Client::SetAchievementAchieved(ScriptMethodParams ¶ms) {
+ params._result = false;
}
-NumberPtr AGS2Client::ResetAchievement(const ScriptMethodParams ¶ms) {
- return false;
+void AGS2Client::ResetAchievement(ScriptMethodParams ¶ms) {
+ params._result = false;
}
-NumberPtr AGS2Client::GetIntStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGS2Client::GetIntStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGS2Client::GetFloatStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGS2Client::GetFloatStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGS2Client::GetAverageRateStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGS2Client::GetAverageRateStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGS2Client::SetIntStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGS2Client::SetIntStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGS2Client::SetFloatStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGS2Client::SetFloatStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGS2Client::UpdateAverageRateStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGS2Client::UpdateAverageRateStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-void AGS2Client::ResetStatsAndAchievements(const ScriptMethodParams ¶ms) {
+void AGS2Client::ResetStatsAndAchievements(ScriptMethodParams ¶ms) {
}
-NumberPtr AGS2Client::get_Initialized(const ScriptMethodParams ¶ms) {
- return 0;
+void AGS2Client::get_Initialized(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-void AGS2Client::get_CurrentLeaderboardName(const ScriptMethodParams ¶ms) {
+void AGS2Client::get_CurrentLeaderboardName(ScriptMethodParams ¶ms) {
}
-void AGS2Client::RequestLeaderboard(const ScriptMethodParams ¶ms) {
+void AGS2Client::RequestLeaderboard(ScriptMethodParams ¶ms) {
}
-NumberPtr AGS2Client::UploadScore(const ScriptMethodParams ¶ms) {
- return 0;
+void AGS2Client::UploadScore(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-void AGS2Client::geti_LeaderboardNames(const ScriptMethodParams ¶ms) {
+void AGS2Client::geti_LeaderboardNames(ScriptMethodParams ¶ms) {
}
-NumberPtr AGS2Client::geti_LeaderboardScores(const ScriptMethodParams ¶ms) {
- return 0;
+void AGS2Client::geti_LeaderboardScores(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGS2Client::get_LeaderboardCount(const ScriptMethodParams ¶ms) {
- return 0;
+void AGS2Client::get_LeaderboardCount(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-void AGS2Client::GetUserName(const ScriptMethodParams ¶ms) {
+void AGS2Client::GetUserName(ScriptMethodParams ¶ms) {
}
-void AGS2Client::GetCurrentGameLanguage(const ScriptMethodParams ¶ms) {
+void AGS2Client::GetCurrentGameLanguage(ScriptMethodParams ¶ms) {
}
-void AGS2Client::FindLeaderboard(const ScriptMethodParams ¶ms) {
+void AGS2Client::FindLeaderboard(ScriptMethodParams ¶ms) {
}
-NumberPtr AGS2Client::Initialize(const ScriptMethodParams ¶ms) {
- return 0;
+void AGS2Client::Initialize(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
/*------------------------------------------------------------------*/
@@ -179,12 +179,12 @@ void AGSGalaxy::AGS_EngineStartup(IAGSEngine *engine) {
}
}
-NumberPtr AGSGalaxy::IsAchievementAchieved(const ScriptMethodParams ¶ms) {
+void AGSGalaxy::IsAchievementAchieved(ScriptMethodParams ¶ms) {
PARAMS1(char *, id);
- return AchMan.isAchieved(id);
+ params._result = AchMan.isAchieved(id);
}
-NumberPtr AGSGalaxy::SetAchievementAchieved(const ScriptMethodParams ¶ms) {
+void AGSGalaxy::SetAchievementAchieved(ScriptMethodParams ¶ms) {
PARAMS1(char *, id);
const MetaEngine &meta = ::AGS::g_vm->getMetaEngine();
@@ -197,76 +197,76 @@ NumberPtr AGSGalaxy::SetAchievementAchieved(const ScriptMethodParams ¶ms) {
}
}
- return AchMan.setAchievement(id, msg);
+ params._result = AchMan.setAchievement(id, msg);
}
-NumberPtr AGSGalaxy::ResetAchievement(const ScriptMethodParams ¶ms) {
+void AGSGalaxy::ResetAchievement(ScriptMethodParams ¶ms) {
PARAMS1(char *, id);
- return AchMan.clearAchievement(id);
+ params._result = AchMan.clearAchievement(id);
}
-NumberPtr AGSGalaxy::GetIntStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSGalaxy::GetIntStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSGalaxy::GetFloatStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSGalaxy::GetFloatStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSGalaxy::GetAverageRateStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSGalaxy::GetAverageRateStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSGalaxy::SetIntStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSGalaxy::SetIntStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSGalaxy::SetFloatStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSGalaxy::SetFloatStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSGalaxy::UpdateAverageRateStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSGalaxy::UpdateAverageRateStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-void AGSGalaxy::ResetStatsAndAchievements(const ScriptMethodParams ¶ms) {
+void AGSGalaxy::ResetStatsAndAchievements(ScriptMethodParams ¶ms) {
AchMan.resetAllAchievements();
AchMan.resetAllStats();
}
-NumberPtr AGSGalaxy::get_Initialized(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSGalaxy::get_Initialized(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-void AGSGalaxy::get_CurrentLeaderboardName(const ScriptMethodParams ¶ms) {
+void AGSGalaxy::get_CurrentLeaderboardName(ScriptMethodParams ¶ms) {
}
-void AGSGalaxy::RequestLeaderboard(const ScriptMethodParams ¶ms) {
+void AGSGalaxy::RequestLeaderboard(ScriptMethodParams ¶ms) {
}
-NumberPtr AGSGalaxy::UploadScore(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSGalaxy::UploadScore(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-void AGSGalaxy::geti_LeaderboardNames(const ScriptMethodParams ¶ms) {
+void AGSGalaxy::geti_LeaderboardNames(ScriptMethodParams ¶ms) {
}
-NumberPtr AGSGalaxy::geti_LeaderboardScores(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSGalaxy::geti_LeaderboardScores(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSGalaxy::get_LeaderboardCount(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSGalaxy::get_LeaderboardCount(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-void AGSGalaxy::GetUserName(const ScriptMethodParams ¶ms) {
+void AGSGalaxy::GetUserName(ScriptMethodParams ¶ms) {
}
-void AGSGalaxy::GetCurrentGameLanguage(const ScriptMethodParams ¶ms) {
+void AGSGalaxy::GetCurrentGameLanguage(ScriptMethodParams ¶ms) {
}
-NumberPtr AGSGalaxy::Initialize(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSGalaxy::Initialize(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
/*------------------------------------------------------------------*/
@@ -315,12 +315,12 @@ void AGSSteam::AGS_EngineStartup(IAGSEngine *engine) {
}
}
-NumberPtr AGSSteam::IsAchievementAchieved(const ScriptMethodParams ¶ms) {
+void AGSSteam::IsAchievementAchieved(ScriptMethodParams ¶ms) {
PARAMS1(char *, id);
- return AchMan.isAchieved(id);
+ params._result = AchMan.isAchieved(id);
}
-NumberPtr AGSSteam::SetAchievementAchieved(const ScriptMethodParams ¶ms) {
+void AGSSteam::SetAchievementAchieved(ScriptMethodParams ¶ms) {
PARAMS1(char *, id);
const MetaEngine &meta = ::AGS::g_vm->getMetaEngine();
@@ -333,76 +333,76 @@ NumberPtr AGSSteam::SetAchievementAchieved(const ScriptMethodParams ¶ms) {
}
}
- return AchMan.setAchievement(id, msg);
+ params._result = AchMan.setAchievement(id, msg);
}
-NumberPtr AGSSteam::ResetAchievement(const ScriptMethodParams ¶ms) {
+void AGSSteam::ResetAchievement(ScriptMethodParams ¶ms) {
PARAMS1(char *, id);
- return AchMan.clearAchievement(id);
+ params._result = AchMan.clearAchievement(id);
}
-NumberPtr AGSSteam::GetIntStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSSteam::GetIntStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSSteam::GetFloatStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSSteam::GetFloatStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSSteam::GetAverageRateStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSSteam::GetAverageRateStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSSteam::SetIntStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSSteam::SetIntStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSSteam::SetFloatStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSSteam::SetFloatStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSSteam::UpdateAverageRateStat(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSSteam::UpdateAverageRateStat(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-void AGSSteam::ResetStatsAndAchievements(const ScriptMethodParams ¶ms) {
+void AGSSteam::ResetStatsAndAchievements(ScriptMethodParams ¶ms) {
AchMan.resetAllAchievements();
AchMan.resetAllStats();
}
-NumberPtr AGSSteam::get_Initialized(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSSteam::get_Initialized(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-void AGSSteam::get_CurrentLeaderboardName(const ScriptMethodParams ¶ms) {
+void AGSSteam::get_CurrentLeaderboardName(ScriptMethodParams ¶ms) {
}
-void AGSSteam::RequestLeaderboard(const ScriptMethodParams ¶ms) {
+void AGSSteam::RequestLeaderboard(ScriptMethodParams ¶ms) {
}
-NumberPtr AGSSteam::UploadScore(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSSteam::UploadScore(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-void AGSSteam::geti_LeaderboardNames(const ScriptMethodParams ¶ms) {
+void AGSSteam::geti_LeaderboardNames(ScriptMethodParams ¶ms) {
}
-NumberPtr AGSSteam::geti_LeaderboardScores(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSSteam::geti_LeaderboardScores(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSSteam::get_LeaderboardCount(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSSteam::get_LeaderboardCount(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-void AGSSteam::GetUserName(const ScriptMethodParams ¶ms) {
+void AGSSteam::GetUserName(ScriptMethodParams ¶ms) {
}
-void AGSSteam::GetCurrentGameLanguage(const ScriptMethodParams ¶ms) {
+void AGSSteam::GetCurrentGameLanguage(ScriptMethodParams ¶ms) {
}
-NumberPtr AGSSteam::FindLeaderboard(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSSteam::FindLeaderboard(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
} // 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 bad7f9fac9..542f1fc032 100644
--- a/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.h
+++ b/engines/ags/plugins/ags_galaxy_steam/ags_galaxy_steam.h
@@ -35,27 +35,27 @@ namespace AGSGalaxySteam {
class AGS2Client : public PluginBase {
protected:
- static NumberPtr IsAchievementAchieved(const ScriptMethodParams ¶ms);
- static NumberPtr SetAchievementAchieved(const ScriptMethodParams ¶ms);
- static NumberPtr ResetAchievement(const ScriptMethodParams ¶ms);
- static NumberPtr GetIntStat(const ScriptMethodParams ¶ms);
- static NumberPtr GetFloatStat(const ScriptMethodParams ¶ms);
- static NumberPtr GetAverageRateStat(const ScriptMethodParams ¶ms);
- static NumberPtr SetIntStat(const ScriptMethodParams ¶ms);
- static NumberPtr SetFloatStat(const ScriptMethodParams ¶ms);
- static NumberPtr UpdateAverageRateStat(const ScriptMethodParams ¶ms);
- static void ResetStatsAndAchievements(const ScriptMethodParams ¶ms);
- static NumberPtr get_Initialized(const ScriptMethodParams ¶ms);
- static void get_CurrentLeaderboardName(const ScriptMethodParams ¶ms);
- static void RequestLeaderboard(const ScriptMethodParams ¶ms);
- static NumberPtr UploadScore(const ScriptMethodParams ¶ms);
- static void geti_LeaderboardNames(const ScriptMethodParams ¶ms);
- static NumberPtr geti_LeaderboardScores(const ScriptMethodParams ¶ms);
- static NumberPtr get_LeaderboardCount(const ScriptMethodParams ¶ms);
- static void GetUserName(const ScriptMethodParams ¶ms);
- static void GetCurrentGameLanguage(const ScriptMethodParams ¶ms);
- static void FindLeaderboard(const ScriptMethodParams ¶ms);
- static NumberPtr Initialize(const ScriptMethodParams ¶ms);
+ 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);
protected:
static void AGS_EngineStartup(IAGSEngine *engine);
@@ -69,26 +69,26 @@ private:
static const char *AGS_GetPluginName();
static void AGS_EngineStartup(IAGSEngine *engine);
- static NumberPtr IsAchievementAchieved(const ScriptMethodParams ¶ms);
- static NumberPtr SetAchievementAchieved(const ScriptMethodParams ¶ms);
- static NumberPtr ResetAchievement(const ScriptMethodParams ¶ms);
- static NumberPtr GetIntStat(const ScriptMethodParams ¶ms);
- static NumberPtr GetFloatStat(const ScriptMethodParams ¶ms);
- static NumberPtr GetAverageRateStat(const ScriptMethodParams ¶ms);
- static NumberPtr SetIntStat(const ScriptMethodParams ¶ms);
- static NumberPtr SetFloatStat(const ScriptMethodParams ¶ms);
- static NumberPtr UpdateAverageRateStat(const ScriptMethodParams ¶ms);
- static void ResetStatsAndAchievements(const ScriptMethodParams ¶ms);
- static NumberPtr get_Initialized(const ScriptMethodParams ¶ms);
- static void get_CurrentLeaderboardName(const ScriptMethodParams ¶ms);
- static void RequestLeaderboard(const ScriptMethodParams ¶ms);
- static NumberPtr UploadScore(const ScriptMethodParams ¶ms);
- static void geti_LeaderboardNames(const ScriptMethodParams ¶ms);
- static NumberPtr geti_LeaderboardScores(const ScriptMethodParams ¶ms);
- static NumberPtr get_LeaderboardCount(const ScriptMethodParams ¶ms);
- static void GetUserName(const ScriptMethodParams ¶ms);
- static void GetCurrentGameLanguage(const ScriptMethodParams ¶ms);
- static NumberPtr Initialize(const ScriptMethodParams ¶ms);
+ 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 Initialize(ScriptMethodParams ¶ms);
public:
AGSGalaxy();
@@ -101,26 +101,26 @@ private:
protected:
static void AGS_EngineStartup(IAGSEngine *engine);
- static NumberPtr IsAchievementAchieved(const ScriptMethodParams ¶ms);
- static NumberPtr SetAchievementAchieved(const ScriptMethodParams ¶ms);
- static NumberPtr ResetAchievement(const ScriptMethodParams ¶ms);
- static NumberPtr GetIntStat(const ScriptMethodParams ¶ms);
- static NumberPtr GetFloatStat(const ScriptMethodParams ¶ms);
- static NumberPtr GetAverageRateStat(const ScriptMethodParams ¶ms);
- static NumberPtr SetIntStat(const ScriptMethodParams ¶ms);
- static NumberPtr SetFloatStat(const ScriptMethodParams ¶ms);
- static NumberPtr UpdateAverageRateStat(const ScriptMethodParams ¶ms);
- static void ResetStatsAndAchievements(const ScriptMethodParams ¶ms);
- static NumberPtr get_Initialized(const ScriptMethodParams ¶ms);
- static void get_CurrentLeaderboardName(const ScriptMethodParams ¶ms);
- static void RequestLeaderboard(const ScriptMethodParams ¶ms);
- static NumberPtr UploadScore(const ScriptMethodParams ¶ms);
- static void geti_LeaderboardNames(const ScriptMethodParams ¶ms);
- static NumberPtr geti_LeaderboardScores(const ScriptMethodParams ¶ms);
- static NumberPtr get_LeaderboardCount(const ScriptMethodParams ¶ms);
- static void GetUserName(const ScriptMethodParams ¶ms);
- static void GetCurrentGameLanguage(const ScriptMethodParams ¶ms);
- static NumberPtr FindLeaderboard(const ScriptMethodParams ¶ms);
+ 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);
public:
AGSSteam();
diff --git a/engines/ags/plugins/ags_joy/ags_joy.cpp b/engines/ags/plugins/ags_joy/ags_joy.cpp
index d819297dec..dbc8b89e55 100644
--- a/engines/ags/plugins/ags_joy/ags_joy.cpp
+++ b/engines/ags/plugins/ags_joy/ags_joy.cpp
@@ -60,63 +60,63 @@ void AGSJoy::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD_EXT(Joystick::EnableEvents, EnableEvents);
}
-NumberPtr AGSJoy::Count(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSJoy::Count(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSJoy::Name(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSJoy::Name(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSJoy::Rescan(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSJoy::Rescan(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSJoy::Open(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSJoy::Open(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSJoy::IsOpen(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSJoy::IsOpen(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-void AGSJoy::Click(const ScriptMethodParams ¶ms) {
+void AGSJoy::Click(ScriptMethodParams ¶ms) {
}
-void AGSJoy::Close(const ScriptMethodParams ¶ms) {
+void AGSJoy::Close(ScriptMethodParams ¶ms) {
}
-NumberPtr AGSJoy::Valid(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSJoy::Valid(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSJoy::Unplugged(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSJoy::Unplugged(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSJoy::GetName(const ScriptMethodParams ¶ms) {
- return NumberPtr();
+void AGSJoy::GetName(ScriptMethodParams ¶ms) {
+ params._result = NumberPtr();
}
-NumberPtr AGSJoy::GetAxis(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSJoy::GetAxis(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSJoy::IsButtonDown(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSJoy::IsButtonDown(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-NumberPtr AGSJoy::IsJoyBtnDown(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSJoy::IsJoyBtnDown(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-void AGSJoy::Update(const ScriptMethodParams ¶ms) {
+void AGSJoy::Update(ScriptMethodParams ¶ms) {
}
-void AGSJoy::DisableEvents(const ScriptMethodParams ¶ms) {
+void AGSJoy::DisableEvents(ScriptMethodParams ¶ms) {
}
-void AGSJoy::EnableEvents(const ScriptMethodParams ¶ms) {
+void AGSJoy::EnableEvents(ScriptMethodParams ¶ms) {
}
} // namespace AGSJoy
diff --git a/engines/ags/plugins/ags_joy/ags_joy.h b/engines/ags/plugins/ags_joy/ags_joy.h
index 0cd4278f11..2b8946384e 100644
--- a/engines/ags/plugins/ags_joy/ags_joy.h
+++ b/engines/ags/plugins/ags_joy/ags_joy.h
@@ -37,22 +37,22 @@ private:
static void AGS_EngineStartup(IAGSEngine *lpEngine);
private:
- static NumberPtr Count(const ScriptMethodParams ¶ms);
- static NumberPtr Name(const ScriptMethodParams ¶ms);
- static NumberPtr Rescan(const ScriptMethodParams ¶ms);
- static NumberPtr Open(const ScriptMethodParams ¶ms);
- static NumberPtr IsOpen(const ScriptMethodParams ¶ms);
- static void Click(const ScriptMethodParams ¶ms);
- static void Close(const ScriptMethodParams ¶ms);
- static NumberPtr Valid(const ScriptMethodParams ¶ms);
- static NumberPtr Unplugged(const ScriptMethodParams ¶ms);
- static NumberPtr GetName(const ScriptMethodParams ¶ms);
- static NumberPtr GetAxis(const ScriptMethodParams ¶ms);
- static NumberPtr IsButtonDown(const ScriptMethodParams ¶ms);
- static NumberPtr IsJoyBtnDown(const ScriptMethodParams ¶ms);
- static void Update(const ScriptMethodParams ¶ms);
- static void DisableEvents(const ScriptMethodParams ¶ms);
- static void EnableEvents(const ScriptMethodParams ¶ms);
+ 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);
public:
AGSJoy();
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 4d4581408a..b48ca2cb23 100644
--- a/engines/ags/plugins/ags_pal_render/ags_pal_render.cpp
+++ b/engines/ags/plugins/ags_pal_render/ags_pal_render.cpp
@@ -1602,7 +1602,7 @@ void AGSPalRender::AGS_EngineShutdown() {
//QuitCleanup();
}
-NumberPtr AGSPalRender::AGS_EngineOnEvent(int event, NumberPtr data) {
+int64 AGSPalRender::AGS_EngineOnEvent(int event, NumberPtr data) {
if (event == AGSE_PRESCREENDRAW && clutslot > 0) {
if (drawreflections) {
int32 sh, sw = 0;
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 2eaa35f7c7..b07d8f76ab 100644
--- a/engines/ags/plugins/ags_pal_render/ags_pal_render.h
+++ b/engines/ags/plugins/ags_pal_render/ags_pal_render.h
@@ -35,7 +35,7 @@ private:
static const char *AGS_GetPluginName();
static void AGS_EngineStartup(IAGSEngine *lpEngine);
static void AGS_EngineShutdown();
- static NumberPtr AGS_EngineOnEvent(int event, NumberPtr data);
+ static int64 AGS_EngineOnEvent(int event, NumberPtr data);
static void syncGame(Serializer &s);
public:
AGSPalRender();
diff --git a/engines/ags/plugins/ags_parallax/ags_parallax.cpp b/engines/ags/plugins/ags_parallax/ags_parallax.cpp
index 7ef7ffc36d..f8a4a7d762 100644
--- a/engines/ags/plugins/ags_parallax/ags_parallax.cpp
+++ b/engines/ags/plugins/ags_parallax/ags_parallax.cpp
@@ -72,7 +72,7 @@ void AGSParallax::AGS_EngineStartup(IAGSEngine *engine) {
_engine->RequestEventHook(AGSE_RESTOREGAME);
}
-NumberPtr AGSParallax::AGS_EngineOnEvent(int event, NumberPtr data) {
+int64 AGSParallax::AGS_EngineOnEvent(int event, NumberPtr data) {
if (event == AGSE_PREGUIDRAW) {
Draw(true);
} else if (event == AGSE_PRESCREENDRAW) {
@@ -147,7 +147,7 @@ void AGSParallax::Draw(bool foreground) {
}
}
-void AGSParallax::pxDrawSprite(const ScriptMethodParams ¶ms) {
+void AGSParallax::pxDrawSprite(ScriptMethodParams ¶ms) {
PARAMS5(int, id, int, x, int, y, int, slot, int, speed);
#ifdef DEBUG
char buffer[200];
@@ -172,7 +172,7 @@ void AGSParallax::pxDrawSprite(const ScriptMethodParams ¶ms) {
}
-void AGSParallax::pxDeleteSprite(const ScriptMethodParams ¶ms) {
+void AGSParallax::pxDeleteSprite(ScriptMethodParams ¶ms) {
PARAMS1(int, id);
#ifdef DEBUG
char buffer[200];
diff --git a/engines/ags/plugins/ags_parallax/ags_parallax.h b/engines/ags/plugins/ags_parallax/ags_parallax.h
index 0b85e8346c..cfab409d20 100644
--- a/engines/ags/plugins/ags_parallax/ags_parallax.h
+++ b/engines/ags/plugins/ags_parallax/ags_parallax.h
@@ -58,10 +58,10 @@ private:
private:
static const char *AGS_GetPluginName();
static void AGS_EngineStartup(IAGSEngine *lpEngine);
- static NumberPtr AGS_EngineOnEvent(int event, NumberPtr data);
+ static int64 AGS_EngineOnEvent(int event, NumberPtr data);
- static void pxDrawSprite(const ScriptMethodParams ¶ms);
- static void pxDeleteSprite(const ScriptMethodParams ¶ms);
+ static void pxDrawSprite(ScriptMethodParams ¶ms);
+ static void pxDeleteSprite(ScriptMethodParams ¶ms);
private:
static void syncGame(Serializer &s);
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 bb9d3f1a38..774800b875 100644
--- a/engines/ags/plugins/ags_snow_rain/ags_snow_rain.cpp
+++ b/engines/ags/plugins/ags_snow_rain/ags_snow_rain.cpp
@@ -97,7 +97,7 @@ void AGSSnowRain::AGS_EngineShutdown() {
delete _snow;
}
-NumberPtr AGSSnowRain::AGS_EngineOnEvent(int event, NumberPtr data) {
+int64 AGSSnowRain::AGS_EngineOnEvent(int event, NumberPtr data) {
if (event == AGSE_PREGUIDRAW) {
if (_rain->IsActive())
_rain->Update();
@@ -125,114 +125,114 @@ NumberPtr AGSSnowRain::AGS_EngineOnEvent(int event, NumberPtr data) {
}
-void AGSSnowRain::srSetWindSpeed(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetWindSpeed(ScriptMethodParams ¶ms) {
PARAMS1(int, value);
_snow->SetWindSpeed(value);
_rain->SetWindSpeed(value);
}
-void AGSSnowRain::srSetBaseline(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetBaseline(ScriptMethodParams ¶ms) {
PARAMS2(int, top, int, bottom);
_snow->SetBaseline(top, bottom);
_rain->SetBaseline(top, bottom);
}
-void AGSSnowRain::srSetSnowDriftRange(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetSnowDriftRange(ScriptMethodParams ¶ms) {
PARAMS2(int, min_value, int, max_value);
_snow->SetDriftRange(min_value, max_value);
}
-void AGSSnowRain::srSetSnowDriftSpeed(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetSnowDriftSpeed(ScriptMethodParams ¶ms) {
PARAMS2(int, min_value, int, max_value);
_snow->SetDriftSpeed(min_value, max_value);
}
-void AGSSnowRain::srChangeSnowAmount(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srChangeSnowAmount(ScriptMethodParams ¶ms) {
PARAMS1(int, amount);
_snow->ChangeAmount(amount);
}
-void AGSSnowRain::srSetSnowView(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetSnowView(ScriptMethodParams ¶ms) {
PARAMS4(int, kind_id, int, event, int, view, int, loop);
_snow->SetView(kind_id, event, view, loop);
}
-void AGSSnowRain::srSetSnowDefaultView(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetSnowDefaultView(ScriptMethodParams ¶ms) {
PARAMS2(int, view, int, loop);
_snow->SetDefaultView(view, loop);
}
-void AGSSnowRain::srSetSnowTransparency(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetSnowTransparency(ScriptMethodParams ¶ms) {
PARAMS2(int, min_value, int, max_value);
_snow->SetTransparency(min_value, max_value);
}
-void AGSSnowRain::srSetSnowWindSpeed(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetSnowWindSpeed(ScriptMethodParams ¶ms) {
PARAMS1(int, value);
_snow->SetWindSpeed(value);
}
-void AGSSnowRain::srSetSnowBaseline(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetSnowBaseline(ScriptMethodParams ¶ms) {
PARAMS2(int, top, int, bottom);
_snow->SetBaseline(top, bottom);
}
-void AGSSnowRain::srSetSnowAmount(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetSnowAmount(ScriptMethodParams ¶ms) {
PARAMS1(int, amount);
_snow->SetAmount(amount);
}
-void AGSSnowRain::srSetSnowFallSpeed(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetSnowFallSpeed(ScriptMethodParams ¶ms) {
PARAMS2(int, min_value, int, max_value);
_snow->SetFallSpeed(min_value, max_value);
}
-void AGSSnowRain::srSetRainDriftRange(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetRainDriftRange(ScriptMethodParams ¶ms) {
PARAMS2(int, min_value, int, max_value);
_rain->SetDriftRange(min_value, max_value);
}
-void AGSSnowRain::srSetRainDriftSpeed(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetRainDriftSpeed(ScriptMethodParams ¶ms) {
PARAMS2(int, min_value, int, max_value);
_rain->SetDriftSpeed(min_value, max_value);
}
-void AGSSnowRain::srChangeRainAmount(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srChangeRainAmount(ScriptMethodParams ¶ms) {
PARAMS1(int, amount);
_rain->ChangeAmount(amount);
}
-void AGSSnowRain::srSetRainView(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetRainView(ScriptMethodParams ¶ms) {
PARAMS4(int, kind_id, int, event, int, view, int, loop);
_rain->SetView(kind_id, event, view, loop);
}
-void AGSSnowRain::srSetRainDefaultView(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetRainDefaultView(ScriptMethodParams ¶ms) {
PARAMS2(int, view, int, loop);
_rain->SetDefaultView(view, loop);
}
-void AGSSnowRain::srSetRainTransparency(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetRainTransparency(ScriptMethodParams ¶ms) {
PARAMS2(int, min_value, int, max_value);
_rain->SetTransparency(min_value, max_value);
}
-void AGSSnowRain::srSetRainWindSpeed(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetRainWindSpeed(ScriptMethodParams ¶ms) {
PARAMS1(int, value);
_rain->SetWindSpeed(value);
}
-void AGSSnowRain::srSetRainBaseline(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetRainBaseline(ScriptMethodParams ¶ms) {
PARAMS2(int, top, int, bottom);
_rain->SetBaseline(top, bottom);
}
-void AGSSnowRain::srSetRainAmount(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetRainAmount(ScriptMethodParams ¶ms) {
PARAMS1(int, amount);
_rain->SetAmount(amount);
}
-void AGSSnowRain::srSetRainFallSpeed(const ScriptMethodParams ¶ms) {
+void AGSSnowRain::srSetRainFallSpeed(ScriptMethodParams ¶ms) {
PARAMS2(int, min_value, int, max_value);
_rain->SetFallSpeed(min_value, max_value);
}
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 82a647ffff..aa6ca0801c 100644
--- a/engines/ags/plugins/ags_snow_rain/ags_snow_rain.h
+++ b/engines/ags/plugins/ags_snow_rain/ags_snow_rain.h
@@ -47,31 +47,31 @@ private:
static const char *AGS_GetPluginName();
static void AGS_EngineStartup(IAGSEngine *lpEngine);
static void AGS_EngineShutdown();
- static NumberPtr AGS_EngineOnEvent(int event, NumberPtr data);
+ static int64 AGS_EngineOnEvent(int event, NumberPtr data);
private:
- static void srSetWindSpeed(const ScriptMethodParams ¶ms);
- static void srSetBaseline(const ScriptMethodParams ¶ms);
- static void srSetSnowDriftRange(const ScriptMethodParams ¶ms);
- static void srSetSnowDriftSpeed(const ScriptMethodParams ¶ms);
- static void srChangeSnowAmount(const ScriptMethodParams ¶ms);
- static void srSetSnowView(const ScriptMethodParams ¶ms);
- static void srSetSnowDefaultView(const ScriptMethodParams ¶ms);
- static void srSetSnowTransparency(const ScriptMethodParams ¶ms);
- static void srSetSnowWindSpeed(const ScriptMethodParams ¶ms);
- static void srSetSnowBaseline(const ScriptMethodParams ¶ms);
- static void srSetSnowAmount(const ScriptMethodParams ¶ms);
- static void srSetSnowFallSpeed(const ScriptMethodParams ¶ms);
- static void srSetRainDriftRange(const ScriptMethodParams ¶ms);
- static void srSetRainDriftSpeed(const ScriptMethodParams ¶ms);
- static void srChangeRainAmount(const ScriptMethodParams ¶ms);
- static void srSetRainView(const ScriptMethodParams ¶ms);
- static void srSetRainDefaultView(const ScriptMethodParams ¶ms);
- static void srSetRainTransparency(const ScriptMethodParams ¶ms);
- static void srSetRainWindSpeed(const ScriptMethodParams ¶ms);
- static void srSetRainBaseline(const ScriptMethodParams ¶ms);
- static void srSetRainAmount(const ScriptMethodParams ¶ms);
- static void srSetRainFallSpeed(const ScriptMethodParams ¶ms);
+ 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);
public:
AGSSnowRain();
};
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 4b3add3251..19a74dd7c5 100644
--- a/engines/ags/plugins/ags_sprite_font/ags_sprite_font.cpp
+++ b/engines/ags/plugins/ags_sprite_font/ags_sprite_font.cpp
@@ -113,33 +113,33 @@ void AGSSpriteFont::AGS_EngineShutdown() {
delete _vWidthRenderer;
}
-void AGSSpriteFont::SetSpriteFont(const ScriptMethodParams ¶ms) {
+void AGSSpriteFont::SetSpriteFont(ScriptMethodParams ¶ms) {
PARAMS9(int, fontNum, int, sprite, int, rows, int, columns, int, charWidth, int, charHeight, int, charMin, int, charMax, bool, use32bit);
_engine->PrintDebugConsole("AGSSpriteFont: SetSpriteFont");
_fontRenderer->SetSpriteFont(fontNum, sprite, rows, columns, charWidth, charHeight, charMin, charMax, use32bit);
_engine->ReplaceFontRenderer(fontNum, _fontRenderer);
}
-void AGSSpriteFont::SetVariableSpriteFont(const ScriptMethodParams ¶ms) {
+void AGSSpriteFont::SetVariableSpriteFont(ScriptMethodParams ¶ms) {
PARAMS2(int, fontNum, int, sprite);
_engine->PrintDebugConsole("AGSSpriteFont: SetVariableFont");
_vWidthRenderer->SetSprite(fontNum, sprite);
_engine->ReplaceFontRenderer(fontNum, _vWidthRenderer);
}
-void AGSSpriteFont::SetGlyph(const ScriptMethodParams ¶ms) {
+void AGSSpriteFont::SetGlyph(ScriptMethodParams ¶ms) {
PARAMS6(int, fontNum, int, charNum, int, x, int, y, int, width, int, height);
_engine->PrintDebugConsole("AGSSpriteFont: SetGlyph");
_vWidthRenderer->SetGlyph(fontNum, charNum, x, y, width, height);
}
-void AGSSpriteFont::SetSpacing(const ScriptMethodParams ¶ms) {
+void AGSSpriteFont::SetSpacing(ScriptMethodParams ¶ms) {
PARAMS2(int, fontNum, int, spacing);
_engine->PrintDebugConsole("AGSSpriteFont: SetSpacing");
_vWidthRenderer->SetSpacing(fontNum, spacing);
}
-void AGSSpriteFont::SetLineHeightAdjust(const ScriptMethodParams ¶ms) {
+void AGSSpriteFont::SetLineHeightAdjust(ScriptMethodParams ¶ms) {
//PARAMS4(int, v1, int, v2, int, v3, int, v4);
// TODO
}
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 34388cf00e..7fa8f8e065 100644
--- a/engines/ags/plugins/ags_sprite_font/ags_sprite_font.h
+++ b/engines/ags/plugins/ags_sprite_font/ags_sprite_font.h
@@ -42,11 +42,11 @@ private:
static void AGS_EngineShutdown();
private:
- static void SetSpriteFont(const ScriptMethodParams ¶ms);
- static void SetVariableSpriteFont(const ScriptMethodParams ¶ms);
- static void SetGlyph(const ScriptMethodParams ¶ms);
- static void SetSpacing(const ScriptMethodParams ¶ms);
- static void SetLineHeightAdjust(const ScriptMethodParams ¶ms);
+ 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);
public:
AGSSpriteFont();
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 b60b769705..f68036a020 100644
--- a/engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.cpp
+++ b/engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.cpp
@@ -54,38 +54,38 @@ void AGSWadgetUtil::AGS_EngineStartup(IAGSEngine *engine) {
SCRIPT_METHOD(MobileResetAchievements);
}
-NumberPtr AGSWadgetUtil::IsOnPhone(const ScriptMethodParams ¶ms) {
- return false;
+void AGSWadgetUtil::IsOnPhone(ScriptMethodParams ¶ms) {
+ params._result = false;
}
-void AGSWadgetUtil::FakeKeypress(const ScriptMethodParams ¶ms) {
+void AGSWadgetUtil::FakeKeypress(ScriptMethodParams ¶ms) {
}
-void AGSWadgetUtil::IosSetAchievementValue(const ScriptMethodParams ¶ms) {
+void AGSWadgetUtil::IosSetAchievementValue(ScriptMethodParams ¶ms) {
}
-NumberPtr AGSWadgetUtil::IosGetAchievementValue(const ScriptMethodParams ¶ms) {
- return -1;
+void AGSWadgetUtil::IosGetAchievementValue(ScriptMethodParams ¶ms) {
+ params._result = -1;
}
-void AGSWadgetUtil::IosShowAchievements(const ScriptMethodParams ¶ms) {
+void AGSWadgetUtil::IosShowAchievements(ScriptMethodParams ¶ms) {
}
-void AGSWadgetUtil::IosResetAchievements(const ScriptMethodParams ¶ms) {
+void AGSWadgetUtil::IosResetAchievements(ScriptMethodParams ¶ms) {
}
-NumberPtr AGSWadgetUtil::MobileGetAchievement(const ScriptMethodParams ¶ms) {
- return NumberPtr();
+void AGSWadgetUtil::MobileGetAchievement(ScriptMethodParams ¶ms) {
+ params._result = NumberPtr();
}
-NumberPtr AGSWadgetUtil::MobileSetAchievement(const ScriptMethodParams ¶ms) {
- return 0;
+void AGSWadgetUtil::MobileSetAchievement(ScriptMethodParams ¶ms) {
+ params._result = 0;
}
-void AGSWadgetUtil::MobileShowAchievements(const ScriptMethodParams ¶ms) {
+void AGSWadgetUtil::MobileShowAchievements(ScriptMethodParams ¶ms) {
}
-void AGSWadgetUtil::MobileResetAchievements(const ScriptMethodParams ¶ms) {
+void AGSWadgetUtil::MobileResetAchievements(ScriptMethodParams ¶ms) {
}
} // namespace AGSWadgetUtil
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 d0a4f90a7a..a94915b334 100644
--- a/engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.h
+++ b/engines/ags/plugins/ags_wadjet_util/ags_wadjet_util.h
@@ -37,16 +37,16 @@ private:
static void AGS_EngineStartup(IAGSEngine *lpEngine);
private:
- static NumberPtr IsOnPhone(const ScriptMethodParams ¶ms);
- static void FakeKeypress(const ScriptMethodParams ¶ms);
- static void IosSetAchievementValue(const ScriptMethodParams ¶ms);
- static NumberPtr IosGetAchievementValue(const ScriptMethodParams ¶ms);
- static void IosShowAchievements(const ScriptMethodParams & params);
- static void IosResetAchievements(const ScriptMethodParams ¶ms);
- static NumberPtr MobileGetAchievement(const ScriptMethodParams ¶ms);
- static NumberPtr MobileSetAchievement(const ScriptMethodParams ¶ms);
- static void MobileShowAchievements(const ScriptMethodParams ¶ms);
- static void MobileResetAchievements(const ScriptMethodParams ¶ms);
+ 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);
public:
AGSWadgetUtil();
diff --git a/engines/ags/plugins/agsplugin.h b/engines/ags/plugins/agsplugin.h
index 892d8e899d..e834d166da 100644
--- a/engines/ags/plugins/agsplugin.h
+++ b/engines/ags/plugins/agsplugin.h
@@ -36,7 +36,10 @@
namespace AGS3 {
-typedef Common::Array<intptr_t> ScriptMethodParams;
+class ScriptMethodParams : public Common::Array<intptr_t> {
+public:
+ NumberPtr _result;
+};
// If the plugin isn't using DDraw, don't require the headers
#ifndef DIRECTDRAW_VERSION
diff --git a/engines/ags/plugins/plugin_base.cpp b/engines/ags/plugins/plugin_base.cpp
index b3546718ba..97d7ef089e 100644
--- a/engines/ags/plugins/plugin_base.cpp
+++ b/engines/ags/plugins/plugin_base.cpp
@@ -152,7 +152,7 @@ void PluginBase::AGS_EngineStartup(IAGSEngine *) {
void PluginBase::AGS_EngineShutdown() {
}
-NumberPtr PluginBase::AGS_EngineOnEvent(int, NumberPtr) {
+int64 PluginBase::AGS_EngineOnEvent(int, NumberPtr) {
return 0;
}
diff --git a/engines/ags/plugins/plugin_base.h b/engines/ags/plugins/plugin_base.h
index f38dfb2f94..8981e79092 100644
--- a/engines/ags/plugins/plugin_base.h
+++ b/engines/ags/plugins/plugin_base.h
@@ -94,8 +94,7 @@ namespace Plugins {
using string = const char *;
typedef uint32 HWND;
-typedef void (*PluginMethod)(const ScriptMethodParams ¶ms);
-typedef NumberPtr(*PluginFunction)(const ScriptMethodParams ¶ms);
+typedef void (*PluginMethod)(ScriptMethodParams ¶ms);
/**
* Base class for the implementation of AGS plugins
@@ -114,16 +113,13 @@ protected:
static void AGS_EditorLoadGame(char *, int);
static void AGS_EngineStartup(IAGSEngine *);
static void AGS_EngineShutdown();
- static NumberPtr AGS_EngineOnEvent(int, NumberPtr);
+ static int64 AGS_EngineOnEvent(int, NumberPtr);
static int AGS_EngineDebugHook(const char *, int, int);
static void AGS_EngineInitGfx(const char *driverID, void *data);
static inline void registerFunction(IAGSEngine *engine, const char *name, PluginMethod fn) {
engine->RegisterScriptFunction(name, (void *)fn);
}
- static inline void registerFunction(IAGSEngine *engine, const char *name, PluginFunction fn) {
- engine->RegisterScriptFunction(name, (void *)fn);
- }
public:
PluginBase();
More information about the Scummvm-git-logs
mailing list