1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-15 11:03:00 +01:00

Expose whether the game is paused to the plugin API

This commit is contained in:
Katherine Norton
2024-05-03 10:59:57 -05:00
committed by GitHub
parent accbd799ee
commit cd528665e6
4 changed files with 13 additions and 1 deletions

View File

@@ -2,6 +2,7 @@
------------------------------------------------------------------------
- Feature: [#11512] Coloured usernames by group on multiplayer servers.
- Feature: [#21734] Park admittance price can now be set via text input.
- Feature: [#21957] [Plugin] Expose whether the game is paused to the plugin API.
- Improved: [#21728] “Fix all rides” cheat now also works if a mechanic is already fixing the ride.
- Improved: [#21769] Expose “animation is backwards” wall property in Tile Inspector.
- Improved: [#21855] Add a separator between “Load Game” and “Save Game”, to avoid accidental overwriting.

View File

@@ -216,6 +216,11 @@ declare global {
*/
readonly mode: GameMode;
/**
* Whether the game is currently paused or not.
*/
readonly paused: boolean;
/**
* Render the current state of the map and save to disc.
* Useful for server administration and timelapse creation.

View File

@@ -47,7 +47,7 @@ namespace OpenRCT2
namespace OpenRCT2::Scripting
{
static constexpr int32_t OPENRCT2_PLUGIN_API_VERSION = 84;
static constexpr int32_t OPENRCT2_PLUGIN_API_VERSION = 85;
// Versions marking breaking changes.
static constexpr int32_t API_VERSION_33_PEEP_DEPRECATION = 33;

View File

@@ -126,6 +126,11 @@ namespace OpenRCT2::Scripting
return "normal";
}
bool paused_get()
{
return GameIsPaused();
}
void captureImage(const DukValue& options)
{
auto ctx = GetContext()->GetScriptEngine().GetContext();
@@ -433,6 +438,7 @@ namespace OpenRCT2::Scripting
dukglue_register_property(ctx, &ScContext::sharedStorage_get, nullptr, "sharedStorage");
dukglue_register_method(ctx, &ScContext::getParkStorage, "getParkStorage");
dukglue_register_property(ctx, &ScContext::mode_get, nullptr, "mode");
dukglue_register_property(ctx, &ScContext::paused_get, nullptr, "paused");
dukglue_register_method(ctx, &ScContext::captureImage, "captureImage");
dukglue_register_method(ctx, &ScContext::getObject, "getObject");
dukglue_register_method(ctx, &ScContext::getAllObjects, "getAllObjects");