OpenRCT2/src/openrct2/Version.h

88 lines
2.3 KiB
C
Raw Normal View History

/*****************************************************************************
* Copyright (c) 2014-2024 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 "common.h"
#include <string>
2018-06-22 23:25:16 +02:00
#define OPENRCT2_NAME "OpenRCT2"
Release v0.4.10 - Feature: [#18171] Add port of the RCT1 Stand-Up Roller Coaster. - Feature: [#21590] [Plugin] Plugins can now read and write banner properties of tile elements. - Feature: [#21636] Add shortcut key for sorting tile elements. - Feature: [objects#294] Add scenery versions of wooden truss supports. - Feature: [objects#295] Flipped version of wooden post. - Improved: [#21424] Extra viewports can now rotate independently from the main viewport. - Improved: [#21561, #21631] Enable more features in Android build (plugins, networking, multiplayer, audio formats). - Improved: [#21599] Currency signs now use non-breaking spaces. - Improved: [objects#157] Added sloped images for many walls. - Improved: [objects#288] Better map colours and more sensible prices for RCT1 land surfaces. - Improved: [objects#292] Vehicle colour cleanups for WW/TT vehicles. - Improved: [objects#299] More accurate ratings modifiers for RCT1 vehicles. - Improved: [objects#309] Updated names for dodgems and flying saucers vehicles. - Improved: [objects#313] buildMenuPriority for dodgems and flying saucers vehicles. - Change: [#21529] Classify “Southern Sands”, “Tiny Towers”, “Nevermore Park”, “Pacifica” as expert scenarios. - Change: [#21545] Reorder Wacky Worlds scenarios and adjust their difficulty classification. - Fix: [#910] Extra viewport does not preserve the location when rotating. - Fix: [#18413] Crash when mouse over a hacked train. - Fix: [#20338] Cannot select Scenery Picker or Scatter Tool when the scenery recolouring tool is active. - Fix: [#21317] Track designer allows proceeding without an object selected. - Fix: [#21360] If the object selection is missing certain types, the Object Selection window will switch to an incorrect tab. - Fix: [#21419] Cannot place walls underground beneath sloped tiles with clearance checks disabled. - Fix: [#21434] Number of guests overflows in objective text. - Fix: [#21522] Supports for 3×3 turns and 45 degree turns on the Hybrid Coaster and Wooden Roller Coaster not drawn correctly. - Fix: [#21543] Crash with creating a TrackIterator with invalid arguments. - Fix: [#21635] Tile inspector hotkey can set wall slope for non-slopeable objects. - Fix: [#21641] Crash when creating track iterator from an invalid tile element. - Fix: [#21652] Dialog window to confirm overwriting files does not apply the theme colours correctly. - Fix: [#21654] No sound effects when using RCT Classic as an asset base. - Fix: [#21654] Extraneous reports of an object conflict between `rct2.audio.base` and `rct2.audio.base.rctc`. - Fix: [#21664] Crash when switching between languages that use TTF. - Fix: [#21668] Crash when on null ride in Guest::UpdateRideLeaveExit. - Fix: [#21691] Crash when validating rides which can't contain banked track. - Fix: [objects#290] “Haunted Mansion” cars have a non-functional third remap colour. - Fix: [objects#296] Incorrect wall placement around large Kremlin/drab pieces. - Fix: [objects#300] Incorrect Colosseum and volcano corner clearances. - Fix: [objects#319] Incorrect diagonal slope images used for RCT1 corkscrew. - Fix: [objects#320] Incorrect Mandarin Duck boats capacity.
2024-04-02 22:21:50 +02:00
#define OPENRCT2_VERSION "0.4.10"
2016-08-19 01:18:09 +02:00
2016-08-28 16:54:38 +02:00
#if defined(__amd64__) || defined(_M_AMD64)
2018-07-21 16:17:06 +02:00
# define OPENRCT2_ARCHITECTURE "x86-64"
2016-08-28 16:54:38 +02:00
#elif defined(__i386__) || defined(_M_IX86)
2018-07-21 16:17:06 +02:00
# define OPENRCT2_ARCHITECTURE "x86"
2019-10-15 06:47:49 +02:00
#elif defined(__aarch64__) || defined(_M_ARM64)
2018-07-21 16:17:06 +02:00
# define OPENRCT2_ARCHITECTURE "AArch64"
2016-08-28 16:54:38 +02:00
#elif defined(__arm__) || defined(_M_ARM)
2018-07-21 16:17:06 +02:00
# if defined(__ARM_ARCH_7A__)
# define OPENRCT2_ARCHITECTURE "arm-v7a"
# else
# define OPENRCT2_ARCHITECTURE "arm"
# endif
#elif defined(__powerpc__) || defined(_M_PPC)
2018-07-21 16:17:06 +02:00
# define OPENRCT2_ARCHITECTURE "PowerPC"
2017-06-15 14:22:15 +02:00
#elif defined(__mips64)
2018-07-21 16:17:06 +02:00
# define OPENRCT2_ARCHITECTURE "mips64"
2017-06-15 14:22:15 +02:00
#elif defined(__mips__)
2018-07-21 16:17:06 +02:00
# define OPENRCT2_ARCHITECTURE "mips"
#elif defined(__riscv)
# define OPENRCT2_ARCHITECTURE "RISC-V"
2016-08-28 16:54:38 +02:00
#endif
#ifdef __EMSCRIPTEN__
2018-07-21 16:17:06 +02:00
# define OPENRCT2_ARCHITECTURE "Emscripten"
#endif
2016-08-28 16:54:38 +02:00
#ifndef OPENRCT2_ARCHITECTURE
2018-07-21 16:17:06 +02:00
# error "OPENRCT2_ARCHITECTURE is undefined. Please add identification."
2016-08-19 01:18:09 +02:00
#endif
// Platform
2017-06-12 19:00:15 +02:00
#ifdef _WIN32
2018-07-21 16:17:06 +02:00
# define OPENRCT2_PLATFORM "Windows"
#endif
2017-06-15 14:22:15 +02:00
#if defined(__linux__) && !defined(__ANDROID__)
2018-07-21 16:17:06 +02:00
# define OPENRCT2_PLATFORM "Linux"
#endif
2017-06-12 19:00:15 +02:00
#if (defined(__APPLE__) && defined(__MACH__))
2018-07-21 16:17:06 +02:00
# define OPENRCT2_PLATFORM "macOS"
#endif
2017-06-12 19:00:15 +02:00
#ifdef __FreeBSD__
2018-07-21 16:17:06 +02:00
# define OPENRCT2_PLATFORM "FreeBSD"
#endif
#ifdef __NetBSD__
# define OPENRCT2_PLATFORM "NetBSD"
#endif
2017-06-15 14:22:15 +02:00
#ifdef __ANDROID__
2018-07-21 16:17:06 +02:00
# define OPENRCT2_PLATFORM "Android"
2017-06-15 14:22:15 +02:00
#endif
2017-06-25 21:25:55 +02:00
#ifdef __OpenBSD__
2018-07-21 16:17:06 +02:00
# define OPENRCT2_PLATFORM "OpenBSD"
2017-06-25 21:25:55 +02:00
#endif
#ifdef __EMSCRIPTEN__
2018-07-21 16:17:06 +02:00
# define OPENRCT2_PLATFORM "Emscripten"
#endif
#ifndef OPENRCT2_PLATFORM
2018-07-21 16:17:06 +02:00
# error Unknown platform!
#endif
2018-02-01 18:49:14 +01:00
extern const char gVersionInfoFull[];
extern const char gVersionInfoTag[];
struct NewVersionInfo
{
std::string tag;
std::string name;
std::string changelog;
std::string url;
};
NewVersionInfo GetLatestVersion();