2014-10-09 01:30:22 +02:00
|
|
|
/*****************************************************************************
|
2020-07-21 15:04:34 +02:00
|
|
|
* Copyright (c) 2014-2020 OpenRCT2 developers
|
2014-10-09 01:30:22 +02:00
|
|
|
*
|
2018-06-15 14:07:34 +02:00
|
|
|
* For a complete list of all authors, please refer to contributors.md
|
|
|
|
* Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2
|
2014-10-09 01:30:22 +02:00
|
|
|
*
|
2018-06-15 14:07:34 +02:00
|
|
|
* OpenRCT2 is licensed under the GNU General Public License version 3.
|
2014-10-09 01:30:22 +02:00
|
|
|
*****************************************************************************/
|
|
|
|
|
2016-12-11 02:15:07 +01:00
|
|
|
#pragma once
|
2014-10-09 01:30:22 +02:00
|
|
|
|
|
|
|
#include "common.h"
|
|
|
|
|
2019-02-23 15:54:17 +01:00
|
|
|
#include <string>
|
|
|
|
|
2020-10-03 04:04:59 +02:00
|
|
|
enum class PromptMode : uint8_t;
|
|
|
|
|
2020-07-28 18:23:09 +02:00
|
|
|
enum class StartupAction
|
2016-12-11 02:15:07 +01:00
|
|
|
{
|
2020-07-28 18:23:09 +02:00
|
|
|
None,
|
|
|
|
Intro,
|
|
|
|
Title,
|
|
|
|
Open,
|
|
|
|
Edit
|
2014-10-09 01:30:22 +02:00
|
|
|
};
|
|
|
|
|
2017-07-28 20:44:13 +02:00
|
|
|
enum
|
|
|
|
{
|
|
|
|
// Although this is labeled a flag it actually means when
|
|
|
|
// zero the screen is in playing mode.
|
|
|
|
SCREEN_FLAGS_PLAYING = 0,
|
|
|
|
SCREEN_FLAGS_TITLE_DEMO = 1,
|
|
|
|
SCREEN_FLAGS_SCENARIO_EDITOR = 2,
|
|
|
|
SCREEN_FLAGS_TRACK_DESIGNER = 4,
|
|
|
|
SCREEN_FLAGS_TRACK_MANAGER = 8,
|
|
|
|
SCREEN_FLAGS_EDITOR = (SCREEN_FLAGS_SCENARIO_EDITOR | SCREEN_FLAGS_TRACK_DESIGNER | SCREEN_FLAGS_TRACK_MANAGER),
|
|
|
|
};
|
|
|
|
|
2020-07-28 18:23:09 +02:00
|
|
|
extern StartupAction gOpenRCT2StartupAction;
|
2018-02-01 18:49:14 +01:00
|
|
|
extern utf8 gOpenRCT2StartupActionPath[512];
|
|
|
|
extern utf8 gCustomUserDataPath[MAX_PATH];
|
2020-06-08 15:11:07 +02:00
|
|
|
extern utf8 gCustomOpenRCT2DataPath[MAX_PATH];
|
2018-09-08 23:07:44 +02:00
|
|
|
extern utf8 gCustomRCT1DataPath[MAX_PATH];
|
2018-02-01 18:49:14 +01:00
|
|
|
extern utf8 gCustomRCT2DataPath[MAX_PATH];
|
|
|
|
extern utf8 gCustomPassword[MAX_PATH];
|
|
|
|
extern bool gOpenRCT2Headless;
|
|
|
|
extern bool gOpenRCT2NoGraphics;
|
|
|
|
extern bool gOpenRCT2ShowChangelog;
|
|
|
|
extern bool gOpenRCT2SilentBreakpad;
|
2020-03-31 23:12:35 +02:00
|
|
|
extern utf8 gSilentRecordingName[MAX_PATH];
|
2014-10-09 01:30:22 +02:00
|
|
|
|
2016-01-10 20:41:09 +01:00
|
|
|
#ifndef DISABLE_NETWORK
|
2018-06-20 17:28:51 +02:00
|
|
|
extern int32_t gNetworkStart;
|
2019-02-23 15:54:17 +01:00
|
|
|
extern std::string gNetworkStartHost;
|
2018-06-20 17:28:51 +02:00
|
|
|
extern int32_t gNetworkStartPort;
|
2019-02-23 15:54:17 +01:00
|
|
|
extern std::string gNetworkStartAddress;
|
2016-01-10 20:41:09 +01:00
|
|
|
#endif
|
|
|
|
|
2018-06-20 17:28:51 +02:00
|
|
|
extern uint32_t gCurrentDrawCount;
|
|
|
|
extern uint8_t gScreenFlags;
|
|
|
|
extern uint32_t gScreenAge;
|
2020-10-03 04:04:59 +02:00
|
|
|
extern PromptMode gSavePromptMode;
|
2017-07-28 20:44:13 +02:00
|
|
|
|
2018-06-22 23:25:16 +02:00
|
|
|
void openrct2_write_full_version_info(utf8* buffer, size_t bufferSize);
|
2018-02-01 18:49:14 +01:00
|
|
|
void openrct2_finish();
|
2014-10-09 01:30:22 +02:00
|
|
|
|
2018-06-22 23:25:16 +02:00
|
|
|
int32_t cmdline_run(const char** argv, int32_t argc);
|