OpenRCT2/src/openrct2
Michał Janiszewski 1f7ef64627
Fix #19574: Handle exits in null locations (#19727)
In park/replay from dump #19574 there was a calamity that happened
likely due to a plugin. Pretty much all rides were deleted in single
tick, which caused the park to mark some locations as null and then it
tripped on one of the many assertions. In many of the places it already
bails out if ride or vehicle is a nullptr, so I followed with similar
approach for invalid ride exits.
2023-03-28 01:16:55 +03:00
..
actions Fix #19503. Hide 3+ queue junction railings behind a flag (#19644) 2023-03-23 08:16:32 +00:00
audio Fix #18994: Title music doesn't start after enabling master volume (#19621) 2023-03-11 16:30:40 +00:00
command_line Close #19176, close #19273: Consistent “CmdLine” naming 2023-02-23 00:03:30 +01:00
config Close #19214: Use consistent casing for RC and RCT (#19230) 2023-01-20 08:19:14 +00:00
core Part of #19608: improve error reporting of zip command failure (#19672) 2023-03-22 19:52:54 +00:00
drawing Pass DPI by ref to string drawing 2023-02-24 22:05:07 +01:00
entity Fix #19574: Handle exits in null locations (#19727) 2023-03-28 01:16:55 +03:00
interface Fix: Chat history in wrong order, doesn't pop up 2023-03-15 09:57:05 +01:00
localisation Fix #19503. Hide 3+ queue junction railings behind a flag (#19644) 2023-03-23 08:16:32 +00:00
management Fix #19553: Undefined upkeep cost check uses new sentinel value (#19568) 2023-03-05 20:16:31 +00:00
math steam position modifier and animation speed properties (#11269) 2023-03-09 15:45:45 +02:00
network Fix #19503. Hide 3+ queue junction railings behind a flag (#19644) 2023-03-23 08:16:32 +00:00
object Pass dpi as ref when drawing object preview 2023-03-13 16:52:49 +01:00
paint Fix #19503. Hide 3+ queue junction railings behind a flag (#19644) 2023-03-23 08:16:32 +00:00
park Rename Vertical to GuestPurchase, this better reflects actual use 2023-03-22 22:28:14 +02:00
peep Remove unused global 2023-01-29 20:51:26 +00:00
platform Close #19176, close #19273: Consistent “CmdLine” naming 2023-02-23 00:03:30 +01:00
profiling Replace 2022 with 2023 in copyright headers 2023-01-01 11:58:01 +01:00
rct1 Rename Vertical to GuestPurchase, this better reflects actual use 2023-03-22 22:28:14 +02:00
rct2 Rename Vertical to GuestPurchase, this better reflects actual use 2023-03-22 22:28:14 +02:00
rct12 ObjectEntry Cleanup. FootpathItem, SceneryGroup, Water, LargeScenery (#19385) 2023-02-15 21:35:16 +00:00
ride Apply review suggestions 2023-03-22 21:51:52 +02:00
scenario Merge pull request #19422 from ZehMatt/string-duplicate 2023-03-06 23:29:32 +02:00
scripting steam position modifier and animation speed properties (#11269) 2023-03-09 15:45:45 +02:00
title Pass DPI by ref to string drawing 2023-02-24 22:05:07 +01:00
ui Fix #19445: Text not cleared using Ctrl+Backspace 2023-02-25 15:42:37 +02:00
util Replace remaining usages of money16, money32 (#19469) 2023-03-02 21:55:42 +00:00
windows Replace remaining usages of money16, money32 (#19469) 2023-03-02 21:55:42 +00:00
world Fix #19574: Handle exits in null locations (#19727) 2023-03-28 01:16:55 +03:00
AssetPack.cpp Replace 2022 with 2023 in copyright headers 2023-01-01 11:58:01 +01:00
AssetPack.h Replace 2022 with 2023 in copyright headers 2023-01-01 11:58:01 +01:00
AssetPackManager.cpp Rename snake_case functions in openrct2/src folder 2023-01-17 13:24:51 +01:00
AssetPackManager.h Replace 2022 with 2023 in copyright headers 2023-01-01 11:58:01 +01:00
CMakeLists.txt Remove last references to WINNT 5.1 (#17631) 2022-07-28 22:39:04 +02:00
Cheats.cpp Rename snake_case functions from localisation folder 2023-01-16 23:12:35 +00:00
Cheats.h Replace 2022 with 2023 in copyright headers 2023-01-01 11:58:01 +01:00
CommandLineSprite.cpp Close #19176, close #19273: Consistent “CmdLine” naming 2023-02-23 00:03:30 +01:00
CommandLineSprite.h Close #19176, close #19273: Consistent “CmdLine” naming 2023-02-23 00:03:30 +01:00
Context.cpp Fix #19445: Text not cleared using Ctrl+Backspace 2023-02-25 15:42:37 +02:00
Context.h Fix #19445: Text not cleared using Ctrl+Backspace 2023-02-25 15:42:37 +02:00
Date.cpp Replace 2022 with 2023 in copyright headers 2023-01-01 11:58:01 +01:00
Date.h Replace 2022 with 2023 in copyright headers 2023-01-01 11:58:01 +01:00
Diagnostic.cpp Rename snake_case functions in openrct2/src folder 2023-01-17 13:24:51 +01:00
Diagnostic.h Rename snake_case functions in openrct2/src folder 2023-01-17 13:24:51 +01:00
Editor.cpp Replace remaining usages of money16, money32 (#19469) 2023-03-02 21:55:42 +00:00
Editor.h Rename snake_case functions in openrct2/src folder 2023-01-17 13:24:51 +01:00
EditorObjectSelectionSession.cpp Fix #19652: remove_unused_objects removes scenery groups 2023-03-18 14:52:36 +01:00
EditorObjectSelectionSession.h Rename sub_ and loc_ functions 2023-01-17 19:05:14 +01:00
FileClassifier.cpp Desnake the rct2/rct12 fields (#19254) 2023-01-22 19:16:41 +00:00
FileClassifier.h Rename snake_case functions in openrct2/src folder 2023-01-17 13:24:51 +01:00
Game.cpp ObjectEntry Cleanup. FootpathItem, SceneryGroup, Water, LargeScenery (#19385) 2023-02-15 21:35:16 +00:00
Game.h Rename snake_case functions in openrct2/src folder 2023-01-17 13:24:51 +01:00
GameState.cpp Rename snake_case functions in OpenRCT2/network folder (#19203) 2023-01-18 06:05:53 +00:00
GameState.h Replace 2022 with 2023 in copyright headers 2023-01-01 11:58:01 +01:00
GameStateSnapshots.cpp Rename Vertical to GuestPurchase, this better reflects actual use 2023-03-22 22:28:14 +02:00
GameStateSnapshots.h Rename classes with snakes OpenRCT2/G*-M* 2023-01-19 15:13:23 +00:00
Identifiers.h Replace 2022 with 2023 in copyright headers 2023-01-01 11:58:01 +01:00
Input.cpp Rename classes with snakes OpenRCT2/G*-M* 2023-01-19 15:13:23 +00:00
Input.h Rename snake_case Class names (Remaining Bits) (#19237) 2023-01-21 19:57:17 +00:00
Intro.cpp Rename classes with snakes OpenRCT2/A*-F* (#19215) 2023-01-19 08:16:44 +00:00
Intro.h Rename classes with snakes OpenRCT2/A*-F* (#19215) 2023-01-19 08:16:44 +00:00
Limits.h Replace 2022 with 2023 in copyright headers 2023-01-01 11:58:01 +01:00
OpenRCT2.cpp Replace 2022 with 2023 in copyright headers 2023-01-01 11:58:01 +01:00
OpenRCT2.h Close #19176, close #19273: Consistent “CmdLine” naming 2023-02-23 00:03:30 +01:00
ParkImporter.cpp Replace 2022 with 2023 in copyright headers 2023-01-01 11:58:01 +01:00
ParkImporter.h Desnake some stuff, small string passing cleanup (#19388) 2023-02-13 20:30:16 +00:00
PlatformEnvironment.cpp Close #19214: Use consistent casing for RC and RCT (#19230) 2023-01-20 08:19:14 +00:00
PlatformEnvironment.h Add tab to About window to show contributors.md 2023-01-14 00:56:20 +01:00
ReplayManager.cpp Rename classes with snakes OpenRCT2/G*-M* 2023-01-19 15:13:23 +00:00
ReplayManager.h Replace 2022 with 2023 in copyright headers 2023-01-01 11:58:01 +01:00
System.hpp Replace 2022 with 2023 in copyright headers 2023-01-01 11:58:01 +01:00
TrackImporter.cpp Replace 2022 with 2023 in copyright headers 2023-01-01 11:58:01 +01:00
TrackImporter.h Replace 2022 with 2023 in copyright headers 2023-01-01 11:58:01 +01:00
Version.cpp Rename snake_case functions in openrct2/src folder 2023-01-17 13:24:51 +01:00
Version.h Rename snake_case functions in openrct2/src folder 2023-01-17 13:24:51 +01:00
common.h Fix #17069: Fix build on ppc64el architectures (#19555) 2023-03-04 12:51:08 -03:00
libopenrct2.vcxproj Build with link time code generation only on the develop branch 2023-03-26 16:50:18 +02:00
readme.md Close #19176, close #19273: Consistent “CmdLine” naming 2023-02-23 00:03:30 +01:00
sprites.h Add W and Y with circumflex 2023-02-23 10:56:37 +01:00

readme.md

Source directory structure

  • actions

    Handles player actions and queues pending actions.

  • audio

    Contains files for mixing and playing music and sound.

  • command_line

    Code specific to command line (arguments).

  • config

    Code concerning game configuration.

  • core

    Provides core functionality such as string operations, encryption, and compression.

  • drawing

    Low level drawing logic and palette tables.

  • interface

    Window and widget logic, includes high level drawing and input.

  • localisation

    String IDs, currency and date logic.

  • management

    Park management logic such as finance, marketing and research.

  • network

    Network and multiplayer logic, includes management of network games and downloading / uploading of content.

  • object

    Code relating to objects (rides, shops, scenery, etc).

  • paint

    Prepares objects' sprites to be drawn.

  • peep

    Guest and staff definitions and logic such as action management and pathfinding.

  • platform

    Compiler and operating system specific code such as type definitions, message handling and file input / output.

  • rct1

    Code specific only to RCT1 (vanilla).

  • rct2

    Code specific only to RCT2 (vanilla).

  • rct12

    Code specific to vanilla RCT, either RCT 1 or RCT 2.

  • ride

    Data and logic for rides, vehicles and track.

  • scenario

    Code relating to game scenarios.

  • title

    Code for loading and updating title screen sequence.

  • util

    Utility and helper functions.

  • windows

    Definitions and logic for all the windows in the game.

  • world

    World objects and mechanics such as the climate, landscape, sprites and park.