1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-17 03:53:07 +01:00
Files
OpenRCT2/src/openrct2/OpenRCT2.h
2025-09-12 18:07:23 +02:00

77 lines
1.9 KiB
C++

/*****************************************************************************
* Copyright (c) 2014-2025 OpenRCT2 developers
*
* For a complete list of all authors, please refer to contributors.md
* Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2
*
* OpenRCT2 is licensed under the GNU General Public License version 3.
*****************************************************************************/
#pragma once
#include "core/StringTypes.h"
enum class PromptMode : uint8_t;
enum class StartupAction
{
None,
Intro,
Title,
Open,
Edit
};
enum class LegacyScene : uint8_t
{
// Although this is labeled a flag it actually means when
// zero the screen is in playing mode.
playing,
titleSequence,
scenarioEditor,
trackDesigner,
trackDesignsManager,
};
bool isInEditorMode();
bool isInTrackDesignerOrManager();
extern StartupAction gOpenRCT2StartupAction;
extern utf8 gOpenRCT2StartupActionPath[512];
extern u8string gCustomUserDataPath;
extern u8string gCustomOpenRCT2DataPath;
extern u8string gCustomRCT1DataPath;
extern u8string gCustomRCT2DataPath;
extern u8string gCustomPassword;
extern bool gOpenRCT2Headless;
extern bool gOpenRCT2NoGraphics;
extern bool gOpenRCT2ShowChangelog;
extern bool gOpenRCT2SilentBreakpad;
extern u8string gSilentRecordingName;
extern bool gSilentReplays;
#ifndef DISABLE_NETWORK
namespace OpenRCT2::Network
{
enum class Mode : int32_t;
}
namespace OpenRCT2
{
extern OpenRCT2::Network::Mode gNetworkStart;
extern std::string gNetworkStartHost;
extern int32_t gNetworkStartPort;
extern std::string gNetworkStartAddress;
} // namespace OpenRCT2
#endif
namespace OpenRCT2
{
int32_t CommandLineRun(const char** argv, int32_t argc);
} // namespace OpenRCT2
extern uint32_t gCurrentDrawCount;
extern LegacyScene gLegacyScene;
extern uint32_t gScreenAge;
extern PromptMode gSavePromptMode;