2015-06-09 17:19:05 +02:00
|
|
|
/*****************************************************************************
|
2023-01-01 11:58:01 +01:00
|
|
|
* Copyright (c) 2014-2023 OpenRCT2 developers
|
2015-06-09 17:19:05 +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
|
2015-06-09 17:19:05 +02:00
|
|
|
*
|
2018-06-15 14:07:34 +02:00
|
|
|
* OpenRCT2 is licensed under the GNU General Public License version 3.
|
2015-06-09 17:19:05 +02:00
|
|
|
*****************************************************************************/
|
|
|
|
|
2021-08-21 09:43:26 +02:00
|
|
|
#pragma once
|
2015-06-09 17:19:05 +02:00
|
|
|
|
2015-06-26 23:40:09 +02:00
|
|
|
#include "common.h"
|
|
|
|
|
|
|
|
extern bool gCheatsSandboxMode;
|
|
|
|
extern bool gCheatsDisableClearanceChecks;
|
|
|
|
extern bool gCheatsDisableSupportLimits;
|
2015-09-18 10:54:48 +02:00
|
|
|
extern bool gCheatsShowAllOperatingModes;
|
2015-10-12 15:58:15 +02:00
|
|
|
extern bool gCheatsShowVehiclesFromOtherTrackTypes;
|
2021-05-29 18:41:16 +02:00
|
|
|
extern bool gCheatsUnlockOperatingLimits;
|
2016-01-25 21:24:18 +01:00
|
|
|
extern bool gCheatsDisableBrakesFailure;
|
|
|
|
extern bool gCheatsDisableAllBreakdowns;
|
|
|
|
extern bool gCheatsBuildInPauseMode;
|
|
|
|
extern bool gCheatsIgnoreRideIntensity;
|
|
|
|
extern bool gCheatsDisableVandalism;
|
2016-03-20 05:25:19 +01:00
|
|
|
extern bool gCheatsDisableLittering;
|
2016-02-15 15:55:36 +01:00
|
|
|
extern bool gCheatsNeverendingMarketing;
|
2018-11-10 14:30:41 +01:00
|
|
|
extern bool gCheatsFreezeWeather;
|
2016-03-28 22:55:02 +02:00
|
|
|
extern bool gCheatsDisableTrainLengthLimit;
|
2016-05-29 03:12:31 +02:00
|
|
|
extern bool gCheatsDisablePlantAging;
|
2017-02-09 06:45:51 +01:00
|
|
|
extern bool gCheatsDisableRideValueAging;
|
2016-06-07 23:08:38 +02:00
|
|
|
extern bool gCheatsEnableChainLiftOnAllTrack;
|
2016-07-26 00:52:50 +02:00
|
|
|
extern bool gCheatsAllowArbitraryRideTypeChanges;
|
2017-07-23 12:09:29 +02:00
|
|
|
extern bool gCheatsIgnoreResearchStatus;
|
2017-09-13 18:01:28 +02:00
|
|
|
extern bool gCheatsEnableAllDrawableTrackPieces;
|
2020-04-25 01:07:36 +02:00
|
|
|
extern bool gCheatsAllowTrackPlaceInvalidHeights;
|
2022-12-17 18:07:47 +01:00
|
|
|
extern bool gCheatsAllowRegularPathAsQueue;
|
2023-04-06 09:36:07 +02:00
|
|
|
extern bool gCheatsAllowSpecialColourSchemes;
|
2023-04-15 02:10:54 +02:00
|
|
|
extern bool gCheatsMakeAllDestructible;
|
2016-06-07 23:08:38 +02:00
|
|
|
|
2019-05-04 15:28:38 +02:00
|
|
|
enum class CheatType : int32_t
|
2018-06-22 23:25:16 +02:00
|
|
|
{
|
2019-05-04 15:28:38 +02:00
|
|
|
SandboxMode,
|
|
|
|
DisableClearanceChecks,
|
|
|
|
DisableSupportLimits,
|
|
|
|
ShowAllOperatingModes,
|
|
|
|
ShowVehiclesFromOtherTrackTypes,
|
|
|
|
DisableTrainLengthLimit,
|
|
|
|
EnableChainLiftOnAllTrack,
|
|
|
|
FastLiftHill,
|
|
|
|
DisableBrakesFailure,
|
|
|
|
DisableAllBreakdowns,
|
|
|
|
UnlockAllPrices,
|
|
|
|
BuildInPauseMode,
|
|
|
|
IgnoreRideIntensity,
|
|
|
|
DisableVandalism,
|
|
|
|
DisableLittering,
|
|
|
|
NoMoney,
|
|
|
|
AddMoney,
|
|
|
|
SetMoney,
|
|
|
|
ClearLoan,
|
|
|
|
SetGuestParameter,
|
|
|
|
GenerateGuests,
|
|
|
|
RemoveAllGuests,
|
|
|
|
GiveAllGuests,
|
|
|
|
SetGrassLength,
|
|
|
|
WaterPlants,
|
|
|
|
DisablePlantAging,
|
|
|
|
FixVandalism,
|
|
|
|
RemoveLitter,
|
|
|
|
SetStaffSpeed,
|
|
|
|
RenewRides,
|
|
|
|
MakeDestructible,
|
|
|
|
FixRides,
|
|
|
|
ResetCrashStatus,
|
|
|
|
TenMinuteInspections,
|
|
|
|
WinScenario,
|
|
|
|
ForceWeather,
|
|
|
|
FreezeWeather,
|
|
|
|
OpenClosePark,
|
|
|
|
HaveFun,
|
|
|
|
SetForcedParkRating,
|
|
|
|
NeverEndingMarketing,
|
|
|
|
AllowArbitraryRideTypeChanges,
|
|
|
|
OwnAllLand,
|
|
|
|
DisableRideValueAging,
|
|
|
|
IgnoreResearchStatus,
|
|
|
|
EnableAllDrawableTrackPieces,
|
2019-10-15 16:34:21 +02:00
|
|
|
CreateDucks,
|
2019-10-15 16:48:45 +02:00
|
|
|
RemoveDucks,
|
2020-04-25 01:07:36 +02:00
|
|
|
AllowTrackPlaceInvalidHeights,
|
2022-04-05 19:35:42 +02:00
|
|
|
NoCapOnQueueLengthDummy, // Removed; this dummy exists only for deserialisation parks that had it saved
|
2022-12-17 18:07:47 +01:00
|
|
|
AllowRegularPathAsQueue,
|
2023-04-06 09:36:07 +02:00
|
|
|
AllowSpecialColourSchemes,
|
2023-10-28 21:21:13 +02:00
|
|
|
RemoveParkFences,
|
2019-05-04 15:28:38 +02:00
|
|
|
Count,
|
2016-02-02 01:04:39 +01:00
|
|
|
};
|
|
|
|
|
2018-06-22 23:25:16 +02:00
|
|
|
enum
|
|
|
|
{
|
2017-06-06 23:24:18 +02:00
|
|
|
GUEST_PARAMETER_HAPPINESS,
|
|
|
|
GUEST_PARAMETER_ENERGY,
|
|
|
|
GUEST_PARAMETER_HUNGER,
|
|
|
|
GUEST_PARAMETER_THIRST,
|
|
|
|
GUEST_PARAMETER_NAUSEA,
|
|
|
|
GUEST_PARAMETER_NAUSEA_TOLERANCE,
|
2020-04-25 15:34:43 +02:00
|
|
|
GUEST_PARAMETER_TOILET,
|
2017-06-06 23:24:18 +02:00
|
|
|
GUEST_PARAMETER_PREFERRED_RIDE_INTENSITY
|
2016-02-02 01:04:39 +01:00
|
|
|
};
|
|
|
|
|
2018-06-22 23:25:16 +02:00
|
|
|
enum
|
|
|
|
{
|
2017-06-06 23:24:18 +02:00
|
|
|
OBJECT_MONEY,
|
|
|
|
OBJECT_PARK_MAP,
|
|
|
|
OBJECT_BALLOON,
|
|
|
|
OBJECT_UMBRELLA
|
2016-02-02 01:04:39 +01:00
|
|
|
};
|
|
|
|
|
2021-03-01 04:44:47 +01:00
|
|
|
constexpr auto CHEATS_GIVE_GUESTS_MONEY = 1000.00_GBP;
|
2016-02-02 01:04:39 +01:00
|
|
|
#define CHEATS_TRAM_INCREMENT 250
|
2019-10-15 16:34:21 +02:00
|
|
|
#define CHEATS_DUCK_INCREMENT 20
|
2016-08-10 05:21:55 +02:00
|
|
|
#define CHEATS_STAFF_FAST_SPEED 0xFF
|
|
|
|
#define CHEATS_STAFF_NORMAL_SPEED 0x60
|
2018-03-21 21:41:27 +01:00
|
|
|
#define CHEATS_STAFF_FREEZE_SPEED 0
|
2016-02-02 01:04:39 +01:00
|
|
|
|
2019-05-04 15:28:38 +02:00
|
|
|
void CheatsReset();
|
|
|
|
const char* CheatsGetName(CheatType cheatType);
|
2023-06-27 15:29:48 +02:00
|
|
|
void CheatsSet(CheatType cheatType, int64_t param1 = 0, int64_t param2 = 0);
|
2019-07-27 15:16:38 +02:00
|
|
|
void CheatsSerialise(class DataSerialiser& ds);
|