diff --git a/src/openrct2/actions/GameAction.h b/src/openrct2/actions/GameAction.h index e0ab348bda..c9c3c52496 100644 --- a/src/openrct2/actions/GameAction.h +++ b/src/openrct2/actions/GameAction.h @@ -119,12 +119,19 @@ public: virtual uint16_t GetActionFlags() const { // Make sure we execute some things only on the client. + uint16_t flags = 0; + if ((GetFlags() & GAME_COMMAND_FLAG_GHOST) != 0 || (GetFlags() & GAME_COMMAND_FLAG_5) != 0) { - return GA_FLAGS::CLIENT_ONLY; + flags |= GA_FLAGS::CLIENT_ONLY; } - return 0; + if (GetFlags() & GAME_COMMAND_FLAG_ALLOW_DURING_PAUSED) + { + flags |= GA_FLAGS::ALLOW_WHILE_PAUSED; + } + + return flags; } /** diff --git a/src/openrct2/actions/MazeSetTrackAction.hpp b/src/openrct2/actions/MazeSetTrackAction.hpp index bc60c6fc1f..13acbe146c 100644 --- a/src/openrct2/actions/MazeSetTrackAction.hpp +++ b/src/openrct2/actions/MazeSetTrackAction.hpp @@ -75,15 +75,6 @@ public: { } - uint16_t GetActionFlags() const override - { - uint16_t flags = GameAction::GetActionFlags(); - if (GetFlags() & GAME_COMMAND_FLAG_ALLOW_DURING_PAUSED) - flags |= GA_FLAGS::ALLOW_WHILE_PAUSED; - - return flags; - } - void Serialise(DataSerialiser& stream) override { GameAction::Serialise(stream); diff --git a/src/openrct2/actions/RideDemolishAction.hpp b/src/openrct2/actions/RideDemolishAction.hpp index 16c1394482..a863ca1a3b 100644 --- a/src/openrct2/actions/RideDemolishAction.hpp +++ b/src/openrct2/actions/RideDemolishAction.hpp @@ -43,11 +43,6 @@ public: { } - uint16_t GetActionFlags() const override - { - return GameAction::GetActionFlags(); - } - void Serialise(DataSerialiser& stream) override { GameAction::Serialise(stream); diff --git a/src/openrct2/actions/WallRemoveAction.hpp b/src/openrct2/actions/WallRemoveAction.hpp index 851037aa1c..38991a817a 100644 --- a/src/openrct2/actions/WallRemoveAction.hpp +++ b/src/openrct2/actions/WallRemoveAction.hpp @@ -31,11 +31,6 @@ public: { } - uint16_t GetActionFlags() const override - { - return GameAction::GetActionFlags(); - } - void Serialise(DataSerialiser& stream) override { GameAction::Serialise(stream); diff --git a/src/openrct2/network/Network.cpp b/src/openrct2/network/Network.cpp index 7f5840360b..b644708fc4 100644 --- a/src/openrct2/network/Network.cpp +++ b/src/openrct2/network/Network.cpp @@ -28,7 +28,7 @@ // This string specifies which version of network stream current build uses. // It is used for making sure only compatible builds get connected, even within // single OpenRCT2 version. -#define NETWORK_STREAM_VERSION "5" +#define NETWORK_STREAM_VERSION "6" #define NETWORK_STREAM_ID OPENRCT2_VERSION "-" NETWORK_STREAM_VERSION static rct_peep* _pickup_peep = nullptr;