Commit Graph

464 Commits

Author SHA1 Message Date
Matt cc6321048f
Refactor window_invalidate to use rct_window::Invalidate 2019-08-11 17:22:00 +02:00
Matt 2053ecb688
Refactor window_scroll_to_viewport to use rct_window::ScrollToViewport 2019-08-11 17:22:00 +02:00
duncanspumpkin af31404472 Use std::string and cleanup unused functions
Use CoordsXY for save pop scenery functions

Use CoordsXY for push save scenery functions

Further refactoring to use coordsxy and standard functions
2019-08-09 20:43:03 +01:00
duncanspumpkin e9b59064e0 Fix code and clang format. Delete dead code.
Use correct TD4 checksum for vanilla TD4's.

Simplified the code for version detection since checksum numbers do not match up to a version

Fix TD4 imports.

Oh yeah TD4 doesn't have scenery or entrances

Move track related structs to correct files
2019-08-09 20:43:02 +01:00
duncanspumpkin 54d6722bf2 Link everything together 2019-08-09 20:40:35 +01:00
duncanspumpkin af92dcba3e Creating t6 exporter 2019-08-09 20:39:54 +01:00
duncanspumpkin e3c63b762e Create new TrackDesign format 2019-08-09 20:39:53 +01:00
Ted John 60060480c2 Fix #9826: NRE in ride_construct 2019-08-09 18:29:34 +01:00
Ted John 9954f0b725
Add nullptr checks for more instances of get_ride (#9819) 2019-08-09 14:20:59 +01:00
Ted John 93789b9034
Add nullptr checks for get_ride in libopenrct2ui (#9795) 2019-08-09 08:06:25 +01:00
Ted John cd4eb86a7c
Merge pull request #9725 from IntelOrca/refactor/ride-manager
Refactor ride list
2019-08-07 21:03:17 +01:00
0cufox0 b4e0df2e5f Fix review issues and formatting 2019-08-05 20:19:57 +01:00
0cufox0 2311501de1 Refactor RideSetColourSchemeAction 2019-08-05 20:18:01 +01:00
Ted John f49447bed5 Fix compile errors 2019-08-04 17:47:16 +01:00
Ted John 414b53b56d Remove ride classifications 2019-08-04 16:43:50 +01:00
Ted John a3fe00f0a3 Refactor ride list to a manager with iterator 2019-08-04 16:43:50 +01:00
Jim Armstrong 6458514361 Fix #9491: Access violation in window_ride_init_viewport 2019-08-01 11:11:59 +02:00
Ted John 40d49b93d3 Do not use user strings for peep names 2019-07-29 19:18:16 +01:00
Ted John 772475848b Fix formatting 2019-07-29 19:18:16 +01:00
Ted John f8b08b334e Fix a few more bugs 2019-07-29 19:18:16 +01:00
Ted John 3f45976009 Fix openrct2ui errors 2019-07-29 19:18:16 +01:00
Ted John 6fff2079f9 Refactor ride name to dynamic args and std::string 2019-07-29 19:18:16 +01:00
Peter dd948f99c4 #9295 Refactor rct_vehcile->status to rct_vehicle::SetState() (#9329)
Fix #9295. Refactor rct_vehicle->status to rct_vehicle::SetState()

Created rct_vehicle::SetState() and refactored all assignments to
rct_vehcile->status. SetState also includes a call to
vehicle_invalidate_window(), so it cannot be forgotten.
2019-06-09 15:45:56 +01:00
Ted John 6f0298deb3 Refactor ride measurement storage 2019-06-09 11:55:41 +02:00
Aaron van Geffen d1f48fab53 Add RCT1 traffic light sprites for ride simulate status. 2019-05-28 16:50:38 +01:00
Aaron van Geffen bab7711c5b Add new simulate icon. 2019-05-28 16:50:38 +01:00
Ted John 5ef0730008 Remove simulate from ride window 2019-05-28 16:50:38 +01:00
Ted John 5f1f428bce Add and use Ride::SupportsStatus 2019-05-28 16:50:08 +01:00
Ted John c4e18e570e Add and implement simulation mode for rides 2019-05-28 16:50:08 +01:00
Hielke Morsink b51f6a4d90 Use case-insensitive compare for soring ride and vehicle types (#9229) 2019-05-11 12:06:29 +01:00
Hielke Morsink 5e9e7bcbe5 Fix: artifacts when changing ride type as client or using the in-game console (#9202) 2019-05-04 10:31:10 +00:00
Michael Steenbeek c8df801e66
Create ShopItemDescriptor 2019-04-26 20:25:11 +02:00
Hielke Morsink ac7bc97736 Expose colour scheme in the tile inspector (#6116) 2019-04-22 15:49:09 +02:00
Michael Steenbeek 5a906b2378
Port more functions to Ride struct (#9119) 2019-04-20 22:22:39 +02:00
Gymnasiast 64e51cd34b Close #8965: Refactor ride->inversions 2019-03-27 11:30:18 +01:00
Ted John 6143326b66 Fix #8941: Price sync is not able to check 2019-03-23 09:31:39 +00:00
Michael Steenbeek 1c570c8eec
Move some ride functions to struct methods 2019-03-20 20:05:25 +01:00
duncanspumpkin f28be1ae30 Merge #8881 branch 'set_park_open' into game_actions 2019-03-18 19:57:50 +00:00
Aaron van Geffen 2af13904c5 Update copyright notices for 2019. (#8903) 2019-03-17 07:16:15 +00:00
duncanspumpkin 24e9428731 Use 64bit values to simplify code 2019-03-16 07:33:21 +00:00
duncanspumpkin 9a1532ecc4 Add ParkSetParameterAction 2019-03-15 21:01:35 +00:00
Ted John cdec457abd Refactor peep struct 2019-02-28 20:28:58 +01:00
duncanspumpkin 93873c5e74 Make review changes. Fix formating
Reorder includes
2019-02-27 08:15:11 +00:00
duncanspumpkin d01dfe44d5 Add RideSetSettingAction
Use game action for calling

Use correct error titles for operation mode changes
2019-02-27 08:15:07 +00:00
duncanspumpkin d5ad6b7b0f Move game command calls to a single call site 2019-02-26 12:47:44 +00:00
Ted John ba445cb6ef Pass Ride* instead of ride_id_t 2019-02-13 20:16:42 +00:00
Ted John fdf9f36fab Pass Ride* instead of ride_id_t 2019-02-12 23:58:45 +00:00
Ted John 9e461b2e34 Pass Ride* instead of ride_id_t 2019-02-12 23:29:38 +00:00
Ted John aaacece0ea Pass Ride* instead of ride_id_t 2019-02-12 23:29:37 +00:00
Matt 34260cb6ca Replace old game command reference. 2019-02-08 18:03:06 +01:00
Matt d87ca57e72 Replace game command references with new game action. 2019-02-08 18:03:06 +01:00
duncanspumpkin 892d6dc5f7 Be explicit about nullptr checks.
Keep travis happy
2019-02-07 10:16:01 +00:00
duncanspumpkin 11c16955c5 Small refactor to use enum class 2019-02-07 08:14:45 +00:00
duncanspumpkin 201db19d0a Move Ride Set Appearance into action framework 2019-02-07 08:14:45 +00:00
Michał Janiszewski 8a395e3706
Fix misaligned access (#8665)
Platforms like ARM are very sensitive to unaligned access. This change
makes sure the addresses obey the C++ standard and are properly aligned.
2019-02-04 23:15:14 +01:00
Ted John 92412d4bab Store ride index inside ride struct 2019-01-18 11:46:18 +01:00
Ted John 8701286772
Use new ride_id_t typedef (#8561) 2019-01-12 10:11:55 +00:00
Michael Steenbeek 31298bd772
Merge pull request #8543 from IntelOrca/refactor-ride
Refactor ride structure
2019-01-02 22:38:20 +01:00
Ted John 38f632074b Merge ride track colour arrays into one 2019-01-01 21:25:34 +00:00
Ted John 37f76d1687 Move station fields into new station struct 2019-01-01 02:26:14 +00:00
Matt d3a20df682 Fix track designs ignoring ghost/preview flags. 2018-12-29 19:23:28 +01:00
Michael Steenbeek 59f9476ecd
Change 'entrance style' to 'station style' 2018-12-16 19:38:30 +01:00
ζeh Matt 7d19a5bc77 Refactor memcpy to std::memcpy and memset to std::memset (#8408) 2018-12-15 22:23:31 +01:00
Michael Steenbeek 6d0f0334d7
Merge pull request #8339 from ZehMatt/realtime-ticks
Use real time ticks for UI effects.
2018-12-15 21:00:44 +01:00
Michael Steenbeek 705fb94f58
Fix #8406: Add 'Entrance style:' label to Ride window 2018-12-15 19:00:37 +01:00
Hielke Morsink 04c3d9a97a Fix #8443: Crash when clicking default vehicle for hacked ride 2018-12-15 11:35:36 +01:00
Michael Steenbeek cf44ea7e24
Fix #3832: Track piece colour scheme paint not network-safe 2018-12-11 22:17:52 +01:00
Ted John 06f203a7e7 Implement surfaces, edges and stations as objects 2018-12-09 23:30:40 +00:00
Matt 862ef3018c Use gCurrentRealTimeTicks whenever appropriate. 2018-12-01 17:00:11 +01:00
Hielke Morsink 354d973a48 Use std::size instead of Util::CountOf 2018-11-23 21:59:08 +01:00
Michael Steenbeek f8add7f62e
Rename rct_tile_element to TileElement 2018-11-01 13:53:50 +01:00
Gymnasiast 59a0c6e487 Fix #8047: Crash when using the paint tool and you click an entrance/exit 2018-10-09 22:15:12 +02:00
Michael Steenbeek c7eaa1ba80 Port entrance ride index lookup 2018-09-27 22:15:04 +02:00
Gymnasiast 149ad183b8 Fix #8028: Ride entrance sign click causes game crash 2018-09-27 19:39:36 +02:00
Gymnasiast ed616b0fb5 Add assert; fix crash 2018-09-25 21:57:21 +02:00
Michael Steenbeek 7643eea514 Fix window_ride_open_track() 2018-09-25 21:57:21 +02:00
Michael Steenbeek 69f02400f9 Move GetColourScheme to struct methods 2018-09-25 21:57:21 +02:00
Michael Steenbeek a3e9c63fc3 Move GetRideIndex to struct methods 2018-09-25 21:57:21 +02:00
Gymnasiast 67d7d5c022 Move getting station index to struct methods 2018-09-25 21:57:21 +02:00
Gymnasiast 8908f3f47e Move getting track type to struct methods 2018-09-25 21:57:21 +02:00
Michael Steenbeek 1d3baef9b7 Remove some C-style tile element functions 2018-09-16 21:34:04 +02:00
Hielke Morsink 64c52fa796 Improve readability 2018-09-09 00:16:46 +02:00
wolfreak99 28bfab0c9b Draw dangerous G forces on graph in red 2018-09-09 00:03:35 +02:00
Linus Unnebäck fd07be587a
Remove Math::Clamp in favour of std::clamp 2018-08-12 16:47:12 +01:00
Gymnasiast 45b8ca9421 Remove more strings, fix error 2018-08-12 15:56:47 +02:00
moTechPlz 8784dfbf41 Fix #7462: Guest window goes beyond the map edge on a spiral slide. (#7752) 2018-08-07 16:20:51 +02:00
clang-format b02dfdbc93 Binpack function arguments together
Previously when the arguments of a function wouldn't fit on a single line, clang-format would put each argument on its own line instead. By enabling the binpack parameter setting, it tried to fit as many on one line as possible instead.

Co-authored-by: Hielke Morsink <hielke.morsink@gmail.com>
2018-07-23 16:00:22 +02:00
clang-format 95ce592579 Enforce not breaking before assignments and function names
Co-authored-by: Hielke Morsink <hielke.morsink@gmail.com>
2018-07-23 16:00:19 +02:00
clang-format e558660860 clang-format UI windows 2018-07-23 16:00:14 +02:00
Michael Steenbeek 1b08fb4e69 Replace our own integer types with standard ones 2018-06-20 17:30:40 +02:00
Michael Steenbeek ec3a1e575e
Replace Math::Min and Max with std variants 2018-06-20 17:11:35 +02:00
Ted John 26666b1da9 Remove empty function: viewport_update_pointers 2018-06-15 23:15:52 +01:00
Hielke Morsink 0cf256ac9e Ready copyright notice for clang-format
Clang-format sees the text behind `#pragma region` as code and formats it. Instead of stating the copyright and date there, it's now in the comment block right below it. The text "Copyright" is left in the `#pragma region` line, as clang-format sees it as a single identifier.

I took the opportunity to normalize the dates, and add the copyright notice to the source files where it was missing them (except for third-party and the generated resources.h file).
2018-06-15 14:07:34 +02:00
Aaron van Geffen ee64daae58 Fix event list. 2018-06-15 09:36:17 +02:00
Gymnasiast fe54cf5ee6 Allow forcing decimals 2018-06-15 09:36:17 +02:00
wolfreak99 961d25dbb9 Make ride window prices allow text input 2018-06-15 09:36:17 +02:00
Michael Steenbeek 8a9dfa6033
Stop ride type dropdown state sharing among ride windows
This eliminates the _rideType variable, which was necessary when we still used a spinner and an Apply button, but is now no longer needed.
2018-06-14 20:15:31 +02:00
Ted John 5a368ce6d9 Move theme code to libopenrct2ui 2018-06-10 23:34:27 +01:00
Hielke Morsink 36d123b272
Revert renaming of spinners (#7650) 2018-06-10 21:31:08 +02:00
Hielke Morsink 8aa122f54e Use empty initializer lists in the openrct2ui project 2018-06-05 14:37:24 +02:00
Michał Janiszewski debb6cd46c Remove declarations of unimplemented functions (#7615) 2018-06-02 13:51:23 +02:00
Aaron van Geffen 635eab3305
Merge pull request #7579 from AaronVanGeffen/widgets/spinners
Make widget spinners horizontal
2018-06-02 00:03:20 +02:00
Aaron van Geffen f2b0f7457e Terminology change: rename spinners to steppers. 2018-06-01 23:25:07 +02:00
Aaron van Geffen 03020530ef Order vehicle type dropdown orthographically. 2018-06-01 20:35:52 +02:00
Aaron van Geffen 9806ab878d Refactor current vehicle dropdown preparation into its own function.
Splitting the lot off to window_ride_show_vehicle_type_dropdown.
2018-06-01 18:48:27 +02:00
Aaron van Geffen 262409a8d4 Fix #7578: Clicking same price throughout park on accident. 2018-06-01 15:20:13 +02:00
Aaron van Geffen 2181e35b95 Replace spinner widgets with horizontal +/- buttons.
Limited to Options and Ride windows so far.
2018-06-01 15:20:13 +02:00
Michael Steenbeek e91777bd7e
Small cleanup to ride window price box 2018-06-01 14:23:46 +02:00
Hielke Morsink f805c8db1a Fix #7589: Error in ride window's hold_down_widgets 2018-05-31 00:24:48 +02:00
Aaron van Geffen 6eadf00a33 Order ride type dropdown orthographically. 2018-05-29 19:09:56 +02:00
Aaron van Geffen 8a1de9d8fd Turn ride type selection into a normal dropdown.
This removes the spinner aspect that previously worked around dropdown item limits.
2018-05-29 19:09:56 +02:00
jensj12 23dc6bb9d3 Add button to refurbish ride
Add a button to refurbish the selected ride. The cost for this is 35% of the
build price and may only be done if the ride is closed and empty.
2018-05-23 16:33:37 +02:00
wolfreak99 8c9b56d0f2 Keep "Save track design" dropdown open (#7531) 2018-05-19 14:13:08 +02:00
Michał Janiszewski a2ef4bd699
Exclude pre-formatted blocks from clang-format (#7520)
[ci skip]
2018-05-16 20:41:29 +02:00
Michael Steenbeek fcf507e051
Spin off shop item stuff to separate files 2018-05-14 19:21:43 +02:00
rwjuk 9a167bb9d3 Disable saving without scenery for flat rides 2018-05-10 20:54:53 +02:00
rwjuk 066980a9d4 Initial implementation of track saving for flat rides 2018-05-10 20:54:53 +02:00
Duncan 7b8507cb22
Merge pull request #7404 from OpenRCT2/peep
Peep Refactor
2018-05-08 20:22:39 +01:00
Michael Steenbeek 907d318e1c
Make Ride Groups more C++-like 2018-05-07 20:18:06 +02:00
Hielke Morsink afac7f6557 Make more global functions part of rct_peep 2018-05-05 11:42:43 +01:00
Michael Steenbeek 5f9d40be7a
Replace tile_element_get_type() with struct method 2018-05-02 19:27:04 +02:00
Michael Steenbeek 2d92ecf10b Fix #7436: Only the first 32 vehicles of a train can be painted 2018-04-26 10:33:54 +02:00
Michał Janiszewski fa11f05dba Remove unused variable 2018-03-27 20:46:12 +02:00
Gymnasiast 566af0c4f7 Remove residual usages of rideEntry->enabledTrackPieces 2018-03-27 20:40:50 +02:00
Michał Janiszewski cd065d4f41 Reduce includes in common header 2018-03-20 00:27:58 +01:00
Michał Janiszewski 4dd0995efb Move cmath out of common.h 2018-03-18 23:29:13 +01:00
Hielke Morsink a8f167c45d Fix a few typos
'vehichle' -> 'vehicle'
'none zero' and 'non zero' -> 'nonzero'
2018-03-09 15:58:12 +01:00
Michael Steenbeek 1fa2fa8f80
Refactor ride->entrances and ride->exits 2018-03-07 19:10:50 +01:00
Hielke Morsink 55979a3fff Remove and replace C typedefs
`typedef struct/union/enum name { ... } name_again;` is not needed whe compiling C++, moving the name at the back to be in front of the object and removing `typedef` makes it usable the very same way.
This also replaces typedefs with the using keyword. They have better readability, especially for function pointer types, and would allow more flexibility when used with templates.
2018-02-14 09:42:26 +01:00
duncanspumpkin 96f664abb9 Fix Water Ride spinning on slope bug. Name flags. Refactor
There was a bug in the spinning water ride code that would mean that it would never trigger the stopping of spinning when going up a lift. This mistake was made during implementation of the function.
2018-01-30 12:53:50 +00:00
pss9205 6b716dc157 Fix #7021: Extra rating factors overflow the vehicle tab in Korean (#7073) 2018-01-23 16:06:37 +01:00
Richard Jenkins 104419f6b2 Fix #7060: Ride window settings can underflow 2018-01-20 20:34:39 +00:00
Ted John 6d63729a40 Fix MSVC 2018-01-18 22:59:30 +00:00
Marijn van der Werf 4c956def67 Update UI imports 2018-01-18 22:57:55 +01:00
ZehMatt 84f2917f59 Use const and constexpr whenever possible. 2018-01-11 22:29:08 +01:00
Michał Janiszewski 469e142c7b Change casing of header files 2018-01-11 09:30:09 +01:00
Michael Steenbeek 6a88d6e04d Move and rename RCT{1,2,12}.h 2018-01-09 13:36:41 +01:00
Aaron van Geffen c9b48beea0 Replace WWT_CLOSEBOX with WWT_BUTTON where not used as a close button. 2018-01-08 00:02:25 +01:00
Aaron van Geffen 12e3e171f1 Refactor WWT_24 into WWT_LABEL. 2018-01-08 00:01:45 +01:00
Aaron van Geffen ecc1cfed2a Rename WWT_DROPDOWN_BUTTON to WWT_BUTTON.
The previous name implied an exclusive association with dropdowns.
While used to display the dropdown triangle button, this is not an
exclusive use.
2018-01-08 00:01:32 +01:00
Aaron van Geffen fad8494ccc Rename WWT_12 to WWT_LABEL_CENTRED.
This is used for centred textual labels.
2018-01-07 23:54:51 +01:00
Ted John 83d1b6eb8f Refactor widget.c to C++ 2018-01-07 12:39:58 +01:00
Ted John f18595a1c1 Refactor viewport.c to C++ 2018-01-07 12:39:58 +01:00
Michael Steenbeek 755add6c9a
Compile localisation folder as C++ 2018-01-06 18:32:25 +01:00
Aaron van Geffen 0138df5dd8 Centre overall viewports on geometric centre. 2018-01-04 07:57:27 +01:00
Aaron van Geffen 92bcc5f579 For overall views, show small rides zoomed in all the way. 2018-01-04 07:57:27 +01:00
rwjuk 29c604d850 Fix #6846: Ride overview window zoom level set too high 2017-12-28 08:55:13 +01:00
Michael Steenbeek 2e79aaf54c Fold vehicle name into regular name 2017-12-22 15:28:41 +01:00
Marijn van der Werf 1e946fc0fe Move Dropdown to UI project 2017-12-16 15:47:38 +02:00
Michael Steenbeek 1a9975d683 Compile util and cheats as C++ 2017-12-14 10:03:21 +01:00
Michael Steenbeek 6dc49d643a Compile files in base dir as C++ 2017-12-13 08:03:48 +01:00
Michael Steenbeek e3c52360db Remove most usages of separate flag
This removes most usages of the separate flag, instead relying on ride groups to do its job.
Research is more complicated and will follow in another commit.
2017-12-08 10:28:29 +01:00
Michael Steenbeek 0ffa2b541a Use more consistent terminology and remove some Americanisms 2017-12-05 10:23:36 +01:00
Michael Steenbeek 60d8865efb Compile game.c and game.h as C++ 2017-12-05 09:10:27 +01:00
Ted John 99d7aaa2d6 Remove RCT2 interop 2017-12-04 19:04:06 +00:00
Michał Janiszewski 14f39e189d Fix building 2017-11-26 21:24:57 +01:00
Ted John a98c936316 Fix #5636: Pausing the game shows mute button as active 2017-11-21 23:23:43 +00:00
Michael Steenbeek c1400a12eb Allow separate ride and vehicle names per ride entry 2017-11-21 18:55:42 +01:00
Michael Steenbeek 2a01c22e8c Raise vehicle tab window height to avoid text clipping 2017-11-21 15:10:35 +01:00
Michael Steenbeek e3ab7e723d Fix #6701: assertion on string ID -2 and name it 2017-11-19 22:22:04 +01:00
Michael Steenbeek f448d16707 Add methods for getting and setting track element type 2017-11-17 12:54:47 +01:00
Michael Steenbeek 953d6840f4 Fix some missed occurrences 2017-11-17 12:54:47 +01:00
Michael Steenbeek 5eed8cecd4 Fix typo in 'multiplier' 2017-11-13 16:22:36 +01:00
Marijn van der Werf 61255e25a7 Move Ride window to UI module 2017-11-03 01:54:37 +01:00
Renamed from src/openrct2/windows/Ride.cpp (Browse further)