diff --git a/src/openrct2/editor.c b/src/openrct2/editor.c index 02adf6c0e8..a65598d651 100644 --- a/src/openrct2/editor.c +++ b/src/openrct2/editor.c @@ -586,7 +586,12 @@ void game_command_edit_scenario_options(sint32* eax, sint32* ebx, sint32* ecx, s window_invalidate_by_class(WC_FINANCES); break; case EDIT_SCENARIOOPTIONS_SETFORBIDMARKETINGCAMPAIGNS: - + if (*edx != FALSE) { + gParkFlags |= PARK_FLAGS_FORBID_MARKETING_CAMPAIGN; + } + else { + gParkFlags &= ~PARK_FLAGS_FORBID_MARKETING_CAMPAIGN; + } break; case EDIT_SCENARIOOPTIONS_SETAVERAGECASHPERGUEST: diff --git a/src/openrct2/windows/editor_scenario_options.c b/src/openrct2/windows/editor_scenario_options.c index cad7f75f0d..2745dbeff5 100644 --- a/src/openrct2/windows/editor_scenario_options.c +++ b/src/openrct2/windows/editor_scenario_options.c @@ -512,7 +512,15 @@ static void window_editor_scenario_options_financial_mouseup(rct_window *w, sint window_invalidate(w); break; case WIDX_FORBID_MARKETING: - gParkFlags ^= PARK_FLAGS_FORBID_MARKETING_CAMPAIGN; + game_do_command( + 0, + GAME_COMMAND_FLAG_APPLY, + EDIT_SCENARIOOPTIONS_SETFORBIDMARKETINGCAMPAIGNS, + gParkFlags & PARK_FLAGS_FORBID_MARKETING_CAMPAIGN ? FALSE : TRUE, + GAME_COMMAND_EDIT_SCENARIO_OPTIONS, + 0, + 0 + ); window_invalidate(w); break; }