* Refactor RIDE_STATUS to use strong enum
* Change platform-specific code to match RIDE_STATUS refactor
* Re-added check for valid RideStatus value
* Fixed errors in "g2" build target
* Use EnumValue instead of static_cast<uint8_t>
* Revert rct{1,2}.h to use uint8_t.
* Fix formatting
* Reverted from constexpr variable to additional enum variant
* Fix formatting
* Replace RIDE_ENTRY_INDEX_NULL with OBJECT_ENTRY_INDEX_NULL
Ride entries are objects like any other, so there is little point having separate constants.
* Use ride_id_t in many more places
* Change RIDE_ID_NULL to 0xFFFF
* Increment network version
* Update replays
Co-authored-by: duncanspumpkin <duncans_pumpkin@hotmail.co.uk>
* Start changing the underlying type
* Further work
* Complete refactor
* Further cleanup
* Remove pointless check
* Increment network and plugin versions
* Add defaults
* Further defaults
* Fix test paint
* Update replays
* Move type field into sub structures
* Use type for misc_type
* Use type for l_type
* Rename to SubType
* Rename SpriteGeneric to MiscEntity
* Rename generic to misc
* Add extra nullptr checks for compilers that cant understand
* Make review changes
* Increment network version
* Update replays
* Split up SmallSceneryPlace/Remove
Added undo function for Remove Scenery
* Refactor: Balloon and Banner actions hpp=>h/cpp
* Refactor: rename all action *.hpp files to *.cpp
This is preparation for separation in later commits. Note that without
the complete set of commits in this branch, the code will not build.
* Refactor Clear, Climate, Custom, and Footpath actions hpp=>h/cpp
* VSCode: add src subdirectories to includePath
* Refactor Guest actions hpp=>h/cpp
* Refactor Land actions hpp=>h/cpp
* Refactor LargeScenery actions hpp=>h/cpp
* Refactor Load, Maze, Network actions hpp=>h/cpp
* Refactor Park actions hpp=>h/cpp
* Refactor/style: move private function declarations in actions *.h
Previous action .h files included private function declarations with
private member variables, before public function declarations. This
commit re-orders the header files to the following order:
- public member variables
- private member variables
- public functions
- private functions
* Refactor Pause action hpp=>h/cpp
* Refactor Peep, Place, Player actions hpp=>h/cpp
* Refactor Ride actions hpp=>h/cpp
* Refactor Scenario, Set*, Sign* actions hpp=>h/cpp
* Refactor SmallScenerySetColourAction hpp=>h/cpp
* Refactor Staff actions hpp=>h/cpp
* Refactor Surface, Tile, Track* actions hpp=>h/cpp
* Refactor Wall and Water actions hpp=>h/cpp
* Fix various includes and other compile errors
Update includes for tests.
Move static function declarations to .h files
Add explicit includes to various files that were previously implicit
(the required header was a nested include in an action hpp file, and the
action .h file does not include that header)
Move RideSetStatus string enum to the cpp file to avoid unused imports
* Xcode: modify project file for actions refactor
* Cleanup whitespace and end-of-file newlines
Co-authored-by: duncanspumpkin <duncans_pumpkin@hotmail.co.uk>
* Part of #12438 Changed RIDE_COMPONENT_TYPE to enum class
(1/3)
Changed the enum RIDE_COMPONENT_TYPE to be enum class in RideData.h.
Shortened the enumerators.
And fixed
I split the changes I did into 3 commits because the enum is used in a total of 85 different files where I just replace the single line where they occur.
The changes in those 85 files are analogous to my change in line 328 in RideData.h in this commit.
* Part of #12438 changed all RIDE_COMPONENT_TYPE enumerators appearances
(2/3)
Changed every appearance of the old RIDE_COMPONENT_TYPE enumerators to the changed enumerators from last commit.
* Part of #12438
(3/3)
Used EnumValue() wherever a field or variable of the type RideComponentType was used as an index.
Havent checked if anything from these 3 commits on this branch got codestyle issues
* Part of #12438
used clang-format
* Closes#12438 Added Accessor function for RideComponentName
Added Accessor function GetRideComponentName to RideData.
to replace the use RideComponentNames[EnumValue(RideComponentType type)]
* Close#12438 moving GetRideComponentName to RideData Headerfile
Moved GetRideComponentName to RideData Headerfile since thats where it should be.
* Remove viewport pointer from get_map_coordinates_from_pos
* Removed viewport from get_window
* Return a InteractionInfo from get_map_coord...
* Remove viewport_interaction_info struct
* Add Entity union to simplify code
* Name the enum used for viewport interaction
* Simplify functions further by returning the info struct
* Add default switches
* Reduce the use of rct_sprite
* Pass the correct types in S4 importer
* Add additional nullptr checks
* Simplify the viewport interaction
* Apply review comments
* Small cleanup of GetEntity
* Fix test paint
* Can now pop balloons and quack ducks in title screen.
* Chengelog entry
* Narrow check for misc sprite down to only duck and balloon sprite.
* Update distribution/changelog.txt
Co-authored-by: Michael Steenbeek <m.o.steenbeek@gmail.com>
* Use the IsBalloon and IsDuck functions instead.
* Update src/openrct2-ui/interface/ViewportInteraction.cpp
Co-authored-by: Michael Steenbeek <m.o.steenbeek@gmail.com>
* Squash: Bring code up to date.
* Add nullptr check.
* Update src/openrct2-ui/interface/ViewportInteraction.cpp
Co-authored-by: Aaron van Geffen <aaron@aaronweb.net>
Co-authored-by: Michael Steenbeek <m.o.steenbeek@gmail.com>
Co-authored-by: Aaron van Geffen <aaron@aaronweb.net>
This patch moves the function that adds coloring to the buffer text into the Buffer struct with a flag.
It also changes both Banner printing and Banner tooltip to use the colored version