Commit Graph

2601 Commits

Author SHA1 Message Date
Hielke Morsink 31dd4bf604
Use lower-case u integral suffix 2022-10-29 16:33:05 +02:00
Hielke Morsink 97a7fcc110
Consistently use literal suffix in upper-case 2022-10-29 16:28:53 +02:00
Haven Kim 58e2da72c6
Fix #18379 : Mini Golf doesn't render Special E track's tunnel correctly (#18404)
Co-authored-by: Gymnasiast <m.o.steenbeek@gmail.com>
2022-10-23 20:32:59 +00:00
Hielke Morsink f91df4138c
Merge pull request #18359 2022-10-18 23:39:49 +02:00
Hielke Morsink 3bb8ea3668
Better annotate some magic numbers in for loops 2022-10-17 16:08:55 +00:00
Hielke Morsink 89fa8d8052
Rename public notification config data members 2022-10-16 21:46:06 +02:00
Hielke Morsink 371470b5d5
Rename public sound config data members 2022-10-16 21:46:05 +02:00
Hielke Morsink abac080d3e
Rename public general config data members 2022-10-16 21:46:01 +02:00
Rik Smeets c80bd455e9
Code style: Remove struct snakes from Paint (#18341) 2022-10-14 20:26:36 +02:00
AuraSpecs 46fa09ca91
Fix: Sides of River Rapids’ corners overlay other parts of the track (#17316) 2022-10-13 20:52:48 +02:00
AuraSpecs dda256ef5f
Add inverted large loops and inverted boosters to Flying RC 2022-10-13 20:51:54 +02:00
Rik Smeets 94e8e9ea6b
Fix #18094: Invisible underground shops/facilities
Underground shops and facilities placed right next to non-underground path would be connected to the path, but the buildings themselves would remain invisible. Guests could use them though.

This has been fixed by drawing a tunnel, which is the same way ride entrances/exits are drawn.
2022-10-13 16:54:19 +00:00
Duncan 406b73d904
Remove final snakes from map and world (#18304) 2022-10-12 09:14:45 -03:00
Duncan 7dd8989e70
Next chunk of World/Map.h snakes (#18296)
* Next chunk of World/Map.h snakes

* Apply clang-format
2022-10-12 06:35:20 +01:00
Duncan 67bbc8560d
Code style: Remove snakes from everything world apart from Map.h (#18273)
* Remove remaining snakes from world (outside of map)

* Initial few desnaking of Map.h
2022-10-11 19:39:24 +01:00
Michael Steenbeek 6fe19878f6
More ImageId cleanup (#18258)
* Remove more usages of uint32 image indices

* Remove unused gfx_get_sprite_size()

* Remove uint32 images from text drawing

* Remove now-unused ImageId overload

* Default-initialise ttfRunIndex

* Suppress false-alarm GCC error
2022-10-10 19:42:40 +01:00
Rik Smeets 8e33cf580f Code style: Remove snakes from virtual floor 2022-10-08 20:50:59 +02:00
Rik Smeets 1d557f40ee Code style: Remove snakes from steel supports 2022-10-08 19:59:32 +02:00
Rik Smeets 29f61fd403 Code style: Remove snakes from wooden supports 2022-10-08 19:20:59 +02:00
Duncan 5dba30778d
Code style: Remove more snakes from the park, maphelper, scenery. (#18222) 2022-10-08 06:56:17 -03:00
Rik Smeets 00d2dd8ef7
Code Style: Remove snake casing in PaintHelpers (#18247) 2022-10-08 11:24:50 +02:00
ZeeMajora ea04c0b010
Corkscrew rc's large flat to steep pieces available cheatless (#18230)
Makes the corkscrew roller coaster's large flat to steep pieces available without cheats for consistency with the looping & twister roller coasters which are similar coaster types that have this element available without cheats.
2022-10-07 22:27:58 +02:00
Michael Steenbeek fa81f119c2
Merge pull request #18208 from Gymnasiast/fix/18204
Fix #18204: Crash opening New Ride window with invalid highlight
2022-10-06 10:54:19 +02:00
Thomas Fai 8e3a0ee814
Part of #16033: VehiclePaint constants 2022-10-05 21:01:06 +00:00
Michael Steenbeek 051ede1598
Merge pull request #18213 from duncanspumpkin/codeStyle4
Code style: Remove snakes from Location, LargeScenery and MapAnimation
2022-10-05 22:36:39 +02:00
Rik Smeets c5904d81d6
Code Style: Remove snakes from paint tile elements (#18212) 2022-10-05 21:27:38 +02:00
duncanspumpkin 16581e9288 Address snakes in mapgen and map animation 2022-10-05 20:22:51 +01:00
duncanspumpkin 2a593b6029 Remove snake cases from Location and LargeScenery 2022-10-05 20:21:56 +01:00
Rik Smeets 8ea34a5360
Fix #18134: Photo section clips through terrain 2022-10-05 18:35:37 +00:00
Gymnasiast 33f5fed0e2
Make GetFirstNonNullRideType() member function 2022-10-05 20:24:15 +02:00
Michael Steenbeek 47d040226b
Merge pull request #18186 from duncanspumpkin/codeStyle3
Code Style: Remove snakes from entrances and footpaths
2022-10-05 13:24:12 +02:00
X123M3-256 8b00fd1824
Add additional track pieces to LIM Launched Coaster and the Looping Coaster (#18168) 2022-10-05 06:41:10 +00:00
duncanspumpkin 3e8dc1b2ac Remove snakes from the foopaths 2022-10-04 20:08:14 +01:00
duncanspumpkin 2c29190ff8 Remove snakes from entrance 2022-10-04 20:07:35 +01:00
Michael Steenbeek 2e6595fe8a
Merge pull request #18050 from IntelOrca/assetpacks-audio
Add asset pack manager and asset packs
2022-10-04 19:08:38 +02:00
73 8c3ff1bfa8
Replace Transparancy with Transparency 2022-10-04 18:28:15 +02:00
Silent 82088f3496
Fix #17664: Ride music channel data leaks when stopping inactive music 2022-10-03 20:02:27 +02:00
Rik Smeets ec12892dba
Remove snake_case from gentle rides (#18173) 2022-10-02 19:54:20 +02:00
Duncan 3565a0172d
Attack snakes in banners and climate (#18163) 2022-10-01 18:54:15 +02:00
Ted John b264a73247 Re-create track sound channel if closed 2022-10-01 13:06:55 +01:00
Ted John 331a5961b1 Implement asset packs for audio 2022-10-01 13:06:52 +01:00
73 b9e677945d
Replace 20XX with 2022 (#18158)
* Replace 2020 with 2022

Replace all 2020 headers with 2022

* replace other years with 2022

add missing years
2022-10-01 08:42:14 +01:00
Michael Steenbeek 2e5847d8d4
Merge pull request #18136 from Gymnasiast/refactor/more-imageid
Refactor/more imageid
2022-09-30 22:17:57 +02:00
73 1c419bcc9e
fix typo and outdated information (#18157)
this will not alter the code, only the annotation
2022-09-30 20:01:30 +00:00
Gymnasiast 26c080a0d7
Remove unused symbols, fixes 2022-09-30 00:01:13 +02:00
Gymnasiast a69a8fa7e8
Remove uint32_t overloads in Paint functions 2022-09-29 21:17:16 +02:00
Michael Steenbeek d352ca3d01
Merge pull request #18146 from ZeeMajora/classic-calculations-2
More accurate rating calculations for the classic coasters
2022-09-29 20:18:11 +02:00
73 edc79d77eb fix visual glitch with supports
maze and shops get their original support colors instead of yellow

Co-authored-by: beam41 <beam_baimon@hotmail.com>
2022-09-29 11:13:15 -04:00
Michael Steenbeek 6f3790cf98
Modify ride drawing code to use ImageId 2022-09-28 21:36:56 +02:00
Michael Steenbeek 7bb7d97bdc
More bound box refactors 2022-09-27 21:20:49 +02:00
ZeeMajora ff85b6bcc3
More accurate rating calculations for the classic coasters 2022-09-27 12:47:16 -04:00
73 4f05ef58b2
Add 5 colour presets to Car Ride 2022-09-25 19:20:29 +02:00
73 bfa22d4ac0
Add 4 colour presets to Boat Hire 2022-09-25 19:17:49 +02:00
73 d00737367b
Add 2 colour presets to Dodgems 2022-09-25 19:17:01 +02:00
73 a7cd02b2be
Add 2 additional colour presets to Flying Saucers 2022-09-25 19:16:06 +02:00
AuraSpecs fd531903ce
Make maintenance of Mini-Golf less hateful (#17745)
This commit gets rid of Diamond Golf Balls: https://youtu.be/Szk3iPckVTo?t=106
2022-09-24 22:12:01 +00:00
AuraSpecs 6972811bff
Fix clipping on Flying RC Inline Twist
Same bug as #17832 but on the Flying RC. This fixes that.
2022-09-24 23:48:44 +02:00
Michael Steenbeek e0a25f3d22
Merge pull request #18081 from rik-smeets/fix-10535
Fix #10535: Guests getting stuck at specific level crossings.
2022-09-23 22:58:13 +02:00
Michael Steenbeek 7af999e2dd
Fix #17980: Path mess and desync when hovering track design 2022-09-23 22:49:16 +02:00
Rik Smeets 9e68226df0 Fix #10535: Guests stuck at some level crossings
The location of the back vehicle itself should be included in determining whether to clear the 'blocked by vehicle' flag on footpath. Otherwise, in specific cases, blocked footpath can be missed and therefore this flag wouldn't ever be cleared.
2022-09-23 07:53:41 +02:00
Rik Smeets 189ebbced7 Reformat code on updating crossings 2022-09-23 07:11:15 +02:00
AuraSpecs 53877c244c
Allow laydown to pull pieces from corkscrew
This PR allows the Laydown RC to render missing pieces from the corkscrew rc.
2022-09-22 21:29:31 +00:00
Gymnasiast f5f4a8a2f6
Use gMapSize instead of MAXIMUM_MAP_SIZE_TECHNICAL in appropriate places
Backported from my map size refactors.

These functions previously scanned the whole map,
so this might also provide a slight performance boost (not tested).
2022-09-22 16:19:46 +02:00
Michael Steenbeek 31e2d7692c
Rename more instances of “vehicle” to “train” 2022-09-22 11:22:18 +02:00
Rik Smeets d2634640ce
Fix visual glitch with Mine Ride's large turn (#18051) 2022-09-18 23:05:20 +02:00
Michael Steenbeek 36904cf3d0
Remove Reverse Incline Launched Shuttle mode from Junior RC (#18001)
This mode was not available in vanilla RCT2. We added it for RCT1 parity
before realising it was a better idea to just spin it off into its own
roller coaster (namely the Classic Mini RC). When we did eventually split
it, I overlooked this one.

Obviously, this mode still remains available on the Classic Mini RC.
2022-09-17 13:07:16 +02:00
Rik Smeets a271c6c6f1
Fix Steeplechase S-bends bounding boxes 2022-09-11 17:56:21 +02:00
Gymnasiast 2a5bccb4c3
Fix whitespace 2022-09-07 20:54:23 +02:00
Michael Steenbeek 400bbbc5ed
Use constant reference 2022-09-07 20:51:00 +02:00
Gymnasiast b4ab72416e
Move Boundbox to its own file, remove non-Coords constructors 2022-09-07 20:51:00 +02:00
iikorni b5ba892bd9
Fix naming case errors 2022-09-07 19:41:35 +02:00
iikorni d70bca7980
Fix error with MagicCarpet BoundBox conversion 2022-09-07 19:41:35 +02:00
iikorni 388387c809
Fix formatting on files 2022-09-07 19:41:35 +02:00
iikorni 4fa4e4d440
Change some rides over to the BoundBoxXY struct
Changes over the Crooked House, Ferris Wheel, Haunted House,
Magic Carpet, Swinging Ship, Swinging Inverter Ship, Monorail, and
the Supports file over to using the new BoundBoxXY(Z) struct(s).
2022-09-07 19:41:35 +02:00
Michael Steenbeek 1956b718ef
Merge pull request #17821 from Basssiiie/plugin-tracksegment-subposition-length
[Plugin] Implement plugin getters for track and vehicle subpositions
2022-09-07 02:36:42 +02:00
Michael Steenbeek 99a0876ad6
Disable track elements if no train supports them (#17909)
This can be useful in several situations:
- In RCT1 scenarios, or when playing with ported RCT1 vehicles, it will disable elements like banked turns
- We can add extra elements to existing coaster types by default, even if no RCT2 train supports them
2022-09-06 21:24:02 +00:00
Bas 7b5aeece59 Implement plugin getters for subposition and subposition length 2022-09-02 23:18:29 +02:00
Michael Steenbeek 027482cbcf
Fix UpdateRotating function for the Motion Simulator 2022-09-01 12:57:32 +02:00
frutiemax c2cfa95d1a
Add UpdateRideApproachVehicleWaypoints to RTD (#17124) 2022-08-31 22:56:13 -03:00
frutiemax 306cc65258
Add UpdateRotating field to RTD 2022-08-31 10:10:39 +02:00
Michael Steenbeek 6c54bacd41
Fix #17921: NPE in track_block_get_next() (#17922) 2022-08-28 23:46:50 +02:00
AuraSpecs 2633eb013f
Add three colour schemes to Flying Roller Coaster 2022-08-27 15:37:24 +00:00
Gymnasiast bc650d1238
Use RCT2 brakes 2022-08-26 23:53:03 +02:00
spacek531 74ff5429a9
Add Classic Wooden Roller Coaster
Co-authored-by: Gymnasiast <Gymnasiast@users.noreply.github.com>
2022-08-26 23:53:03 +02:00
Rik Smeets f7c769603b Close #9104: Calculate maze support costs 2022-08-22 19:30:01 +02:00
Rik Smeets 5c596eae5d Extract maze cost calculation 2022-08-22 19:29:56 +02:00
Hielke Morsink 7f29e4e39c
Make `rct_windowclass` strong type `WindowClass`
This already revealed some places where implicit conversions were done, including some where its use was nonsense (MouseInput.cpp).
The changes to the Intent class were necessary to keep things working, and this splits things up more neatly.
2022-08-21 18:38:25 +02:00
Michael Steenbeek ebe38a91ce
Return dummy TED when index is out of bounds (#17810) 2022-08-21 17:09:18 +01:00
Dan Stevens 4291568a95
Fix #17844L ‘ride.ratings.calculate’ hook called several times during calculation
The ‘ride.ratings.calculate’ API hook is now called for a ride only after its rating calculations are complete (RIDE_LIFECYCLE_TESTED lifecycle_flag is set).
2022-08-21 00:25:17 +02:00
Michael Steenbeek 564a902b5f
Fix #15328: Incorrect railing on Wooden RC station (#17831) 2022-08-18 23:24:23 +02:00
AuraSpecs 615325dd70
Hotfix B&M inline twist issue (#17832) 2022-08-16 23:50:41 -03:00
frutiemax 37500525b7
Add SpecialElementRatingAdjustment field in the RTD (#17652) 2022-08-13 22:49:38 -03:00
Gymnasiast 5945f7110a
Move gGotoStartPlacementMode to windows/RideConstruction.cpp 2022-08-13 23:00:54 +02:00
Gymnasiast f8a94c2e12
Move two functions out of _legacy.cpp 2022-08-13 23:00:53 +02:00
frutiemax f9bb5b2447
Add GetGuestWaypointLocation to RTD (#17750) 2022-08-13 16:53:27 -03:00
Michael Steenbeek d9e23e9dfa
Use ride_type_t instead of uint8_t in more places (#17803)
Part of preparation for making ride types into objects.
2022-08-13 21:49:19 +02:00
skdltmxn 6aabe38590
Improve FileIndex (#17773) 2022-08-13 20:32:59 +01:00
Duncan adc51ad9aa
Rework rct_vehicle_colour (#16051)
* Remove rct_vehicle_colour and replace with VehicleColour

* Update network version

* Update replay version
2022-08-13 19:30:30 +00:00
Michael Steenbeek 49215a52cf
Remove unnecessary pops from some strings (#17805) 2022-08-13 20:12:30 +02:00
ale a187e10819
Fix #17535: Multiplayer desync when placing rides with scenery 2022-08-13 18:27:43 +02:00
Michael Steenbeek b3d65c9ee6
Merge pull request #17801 from Gymnasiast/fix/17797
Fix #17797: NPE in ride_check_block_brakes()
2022-08-13 17:55:06 +02:00
Ted John b0656122c1
Fix #17784: Colour preset RNG is biased 2022-08-13 17:33:21 +02:00
Gymnasiast 4832e67d14
Fix crash in ride_scroll_to_track_error() 2022-08-13 17:21:34 +02:00
Gymnasiast ec81a5ff14
Fix #17797: NPE in ride_check_block_brakes() 2022-08-13 16:51:48 +02:00
frutiemax 807e080d41
Add RideUpdate to RTD (#17752) 2022-08-13 10:36:43 -03:00
frutiemax a21d9183e6
Add MusicTrackOffsetLength field to RTD (#17684) 2022-08-13 09:56:05 -03:00
frutiemax 2202f8d060
Add ConstructionWindowContext field to RTD (#17749) 2022-08-13 09:18:56 -03:00
spacek531 48530026a2
Flying coaster track additions 2022-08-10 22:54:33 +00:00
Michael Steenbeek 5661da1c68
Unwrap game action compat wrappers 2022-08-11 00:00:58 +02:00
frutiemax 59c31e8b7a
Add AccelerationFactor field to RTD (#17687) 2022-08-09 22:20:07 -03:00
frutiemax 9cd6c646a9
Add UpdateMeasurementsSpecialElements field to RTD (#17659) 2022-08-09 22:18:15 -03:00
frutiemax 6868b3dcaf
Rename IS_SHOP to IS_SHOP_OR_FACILITY and use it for RideObject 2022-08-06 15:00:52 +02:00
frutiemax 2d75858589
Add IS_FIRST_AID flag 2022-08-06 15:00:52 +02:00
frutiemax 76104cbbee
Use RIDE_TYPE_FLAG_IS_TOILET 2022-08-06 15:00:52 +02:00
Gymnasiast ab68d7d631
Remove ride type check in JuniorRollerCoaster.cpp 2022-08-06 12:19:27 +02:00
frutiemax d6d43e5b0b
Remove ride type check for reverser upkeep cost 2022-08-05 21:56:28 +02:00
spacek531 468084a401
Move supported track pieces return type to BitSet 2022-08-05 18:55:30 +00:00
Michael Steenbeek 840f497d85
Merge pull request #17663 from frutiemax/RTD_PoweredLaunchBlock
Convert PoweredLaunch to PoweredLaunchBlockSectioned when block brake
2022-08-03 20:09:36 +02:00
Gymnasiast b54ef13c4f
Implement cleaner method for checking mode availability 2022-08-03 19:42:43 +02:00
Michael Steenbeek 80f0d952ad
Merge pull request #17638 from X123M3-256/new_track_pieces
Add new track pieces to the hybrid and single rail
2022-08-01 23:24:22 +02:00
Gymnasiast d3fd31c611
Rename rct_string_id to StringId 2022-07-31 22:30:13 +02:00
Hielke Morsink d05d675ed9
Refactor window functions to take references 6 2022-07-31 17:23:17 +02:00
Hielke Morsink a258008bef
Refactor window functions to take references 4 2022-07-31 17:23:16 +02:00
Rik Smeets 889293f2b7
Lower default price for the Crooked House (#17655)
Guests didn't want to pay the previous default price,
even if the ride was brand new.
2022-07-31 14:07:36 +02:00
frutiemax e96f428c7b
Add RIDE_TYPE_FLAG_HAS_SEAT_ROTATION for multi-dim rollercoaster 2022-07-31 12:01:22 +02:00
Hielke Morsink 099b3c939b Apply regular expressions to format tables 2022-07-31 10:22:46 +01:00
X123M3-256 da472ff033 Remove unnecessary changes 2022-07-31 10:22:45 +01:00
X123M3-256 f77a2386ca Remove excess newlines from VehicleSubpositionData 2022-07-31 10:22:45 +01:00
X123M3-256 0347ee62cb Remove apparently redundant cast 2022-07-31 10:22:45 +01:00
X123M3-256 8090eab2a3 Fix comments in TrackData 2022-07-31 10:22:45 +01:00
X123M3-256 3b7cd1194c Fix formatting 2022-07-31 10:22:44 +01:00
X123M3-256 77c5bbcafe Finalize track data and G forces 2022-07-31 10:22:04 +01:00
X123M3-256 15d82db8fd Implement zero g rolls, large corkscrews and medium loops 2022-07-31 10:22:00 +01:00
frutiemax aab94437dc
Add RIDE_TYPE_FLAG_HAS_ONE_STATION for gokarts and minigolf 2022-07-31 02:16:48 +02:00
Michael Steenbeek 0bfc151ab9
Remove remaining usages of gGameCommandErrorText 2022-07-30 18:04:59 +02:00
frutiemax d556eafc73
Add LightFXAddLightsMagicVehicle to RTD (#17211) 2022-07-30 16:45:41 +02:00
Michael Steenbeek 5a5b107245
Refactor Twist rotations, fix truncating of operating value (#17636) 2022-07-30 16:32:22 +02:00
Hielke Morsink e2da19f0f7
Add missing includes 2022-07-29 18:45:10 +02:00
Michael Steenbeek 2b859c7099
Remove __ENABLE_LIGHTFX__ define
It is already enabled for all our builds, and upcoming changes to RTD would add a slew more.
Discussed in team chat with Duncan and Hielke.
2022-07-28 21:34:02 +00:00
Michael Steenbeek 6852b184b6
Fix #17541: Station style not correctly saved to TD6 2022-07-28 14:23:53 +02:00
Michael Steenbeek a75cc10dd5
Refactor Ride::Open, Ride::Test not to use gGameCommandErrorText 2022-07-28 14:23:33 +02:00
Michael Steenbeek 1a8660d59d
Pass window reference to tool_set (#17625) 2022-07-27 22:22:22 -03:00
frutiemax a3ce24658c
Add StartRideMusic field to RTD 2022-07-27 23:50:20 +00:00
frutiemax bc72c7e24c
Add UpdateLeaveEntrance field to the RTD (#16986)
Co-authored-by: frutiemax <frutiemax@users.noreply.github.com>
2022-07-26 19:33:54 -03:00
Michael Steenbeek 3f56a0eac9
Fix stray white line 2022-07-26 20:08:05 +01:00
Raymond Zhao 4f23e5e9ec
Refactor struct TrackDesignFileRef
- Refactors track_design_file_ref to TrackDesignFileRef and replaces the utf8* fields of that struct with u8string
- Gets rid of some String::Duplicate() and delete calls
- Uses a bunch of c_str() calls to interface with older functions
2022-07-26 16:12:46 +00:00
Nikolas Parshook 628da77c0e
Refactor ride construction window (#17578) 2022-07-26 15:17:25 +01:00
frutiemax bf432cc943
Add name field to RideTypeDescriptor structure 2022-07-25 00:06:37 +02:00
X123M3-256 55c8a3d775
Add extra vehicle sprite groups (new track pieces part 1) (#17352)
* Add new sprite groups for zero G rolls

* Fix formatting

* Rename vehicle paint functions

* Fix formatting

* Fix parameter name

* Fix formatting
2022-07-24 05:40:41 +01:00
Karst a74acee961
Fix: Wrong boundboxes for tunnels & terrain. (#17312)
* Edit Boundboxes

* Make all code consistent

Eight is the magic number
2022-07-21 07:57:49 +01:00