Commit Graph

355 Commits

Author SHA1 Message Date
Duncan 912080c473 Merge pull request #4529 from zaxcav/adjacentStationRatingBonus
Check for adjacent station(s) when applying rating bonus.
2016-10-20 12:42:36 +01:00
Yaroslav Tretyakov 82b18ddaf3 Fix #4644: steam particle sprite crash 2016-10-18 20:59:53 +01:00
zaxcav c68571392a Strengthen the checks for adjacent stations
Existing checks only checked for a track piece of a snychronised ride at the adjacent location.  Add check that the track piece must also be a station platform.

Refactor common code for syncing stations and applying rating bonus for synchronised rides.
2016-10-05 11:13:28 +02:00
Ted John 7987395444 Merge pull request #4471 from Gymnasiast/onride-photo-underground
Allow building on-ride photo elements underground
2016-09-26 12:24:05 +01:00
Ted John fcb0f2acd6 Fix #4468: Boats at the Boat hire dock move on top of each other
Confusingly gSpriteSpatialIndex is indexed by .yx not .xy, all the more reason to use the dedicated helper method.
2016-09-24 12:55:17 +01:00
Gymnasiast c84e2f3184 Name some constants 2016-09-24 11:08:52 +02:00
Ted John 2258652e83 Wrap direction in vehicle_update_motion_collision_detection 2016-09-18 21:49:58 +01:00
Michał Janiszewski 453e508716 Check access to duck_move_offset 2016-09-18 20:01:22 +02:00
Marijn van der Werf 487d6d8f15 Remove unnecessary addresses.h imports 2016-09-17 20:59:55 +01:00
Marijn van der Werf a3a8484059 Complete integration of 0x009A3B04 2016-09-17 19:54:44 +02:00
Marijn van der Werf a76e21a767 Integrate data at 0x009A37C4 2016-09-17 19:49:52 +02:00
Marijn van der Werf 1a6392cbc9 Integrate data at 0x009A37E4 - 0x009A39C4 2016-09-17 19:08:30 +02:00
Marijn van der Werf 59d2c7a341 Integrate table at 0x009A36C4 2016-09-17 16:07:45 +02:00
Duncan 6e92df1299 Fix #4386: Wrong animation - Merry Go Round
Issue caused by data integration. The rotation time to sprite maps had an extra 7 end bytes at the end of each array to account for the increased time increments during control failure. Without the extra end bytes the game would access invalid memory during a control failure.
Refactored code of vehicle update to remove register names.
2016-09-13 19:47:31 +01:00
Ted John ba453db01f Integrate vehicle globals, part 2 2016-09-10 22:32:01 +01:00
Ted John e234dcbb10 Integrate vehicle globals, part 1 2016-09-10 22:18:51 +01:00
Ted John 4350e53392 Integrate gS6Info 2016-09-10 18:30:53 +01:00
Ted John ae0eb1804c Integrate gParkRatingCasualtyPenalty 2016-09-04 15:44:59 +01:00
jensj12 5500e9e5cd Fix backwards loop in vehicle.c 2016-09-03 16:56:00 +02:00
Marijn van der Werf 3a7fa512a2 Use `rct_string_id` as type where applicable 2016-08-21 16:33:37 +02:00
Marijn van der Werf 853b1c79b2 Integrate stru_9A3AC4 2016-08-20 21:59:59 +01:00
Marijn van der Werf d51a14e8ca Integrate word_9A3684 2016-08-20 22:20:18 +02:00
Marijn van der Werf f862bc8675 Integrate dword_9A2970 2016-08-20 22:01:42 +02:00
Marijn van der Werf db92fc474f Integrate dword_9A2930 2016-08-20 21:50:27 +02:00
Marijn van der Werf d0399dd7f7 Include motion simulator vehicle data 2016-08-20 16:56:55 +01:00
Marijn van der Werf d99fa770fd Include vehicle rotation data 2016-08-20 00:53:54 +01:00
Marijn van der Werf 72cb30c7c4 Include topspin vehicle data 2016-08-19 18:59:23 +01:00
Ted John 5a046ece60 Merge pull request #4291 from zaxcav/stationSync
Fix problems with syncing adjacent stations
2016-08-17 23:04:02 +01:00
zaxcav 6e4290eed7 Remove incorrect details from comment. 2016-08-15 13:21:06 +02:00
zaxcav a562fc4e0b Remove commented out code. 2016-08-15 12:44:20 +02:00
zaxcav de00f27195 Fix issues with sync adjacent stations
Change try_add_synchronised_station() so that adjacent stations are always in the _synchronisedVehicles list; those without a vehicle to sync have vehicle_id == SPRITE_INDEX_NULL.

Change vehicle_can_depart_synchronised() so that adjacent stations are searched for on both sides of the tile; reverse the logic of the return values to make sense with respect to the function name (all except for the case when there are no adjacent stations, which already made sense and was consequently flipped in relation to all other returns; numerous minor fixes to the checks on the departure conditions/exceptions.

In vehicle_update_waiting_to_depart() flip the logic on the call to vehicle_can_depart_synchronised() according with the above change to its return values.

Fixes issues: #4178 and #4182
2016-08-15 12:13:46 +02:00
Marijn van der Werf 6610190e8c Include track flags 2016-08-12 22:42:48 +02:00
Marijn van der Werf 8903559f75 Include data at `0x99ba64` and `0x99ca64` 2016-08-12 20:51:22 +01:00
Yaroslav Tretyakov 4066009778 Fix #4253: Crash in vehicle_update_motion_collision_detection 2016-08-09 08:35:16 +01:00
Marijn van der Werf d5b8fe3732 Integrate dodgems data 2016-08-07 14:31:13 +02:00
Michał Janiszewski 0ece63a7f6 Wrap RCT2's addresses in RCT2_ADDRESS macro 2016-08-06 21:38:46 +01:00
Marijn van der Werf 3d8b71ffbc Rename `gTrackDefinitions` to `TrackDefinitions` 2016-08-04 01:15:23 +02:00
Michał Janiszewski a7f31dda4f Fix issues from gRideProperties review
Also renames it to RideProperties
2016-08-02 23:04:18 +02:00
Michał Janiszewski 6ba62ed123 Integrate vehicle synchronisation info 2016-08-01 23:33:55 +02:00
Michał Janiszewski 2db2ef5eec Fix pointer types 2016-08-01 23:14:42 +02:00
Michał Janiszewski 09a20524a5 Integrate gRideProperties 2016-08-01 23:14:42 +02:00
Michał Janiszewski 3fcc7ab4ef Fix #3822: Crash in check_and_apply_block_section_stop_site 2016-07-27 23:09:17 +01:00
Ted John f5f4238c0b Merge pull request #3888 from marijnvdwerf/integrate/mini-golf
Integrate mini golf data.
2016-07-26 19:24:08 +01:00
Michał Janiszewski 418eb06e66 Fix #3987: division by zero in vehicle update
Prevent division by zero by checking the value first.
2016-07-23 21:52:28 +01:00
duncanspumpkin 9652f68024 Implemented junior rollercoaster paint 2016-07-22 19:16:03 +01:00
Michał Janiszewski 313230a9a4 Refactor more code to correctly handle sprite count 2016-07-17 23:24:16 +02:00
Michał Janiszewski 381545aa2b Refactor loop in vehicle update not to access invalid memory 2016-07-17 23:14:27 +02:00
Michał Janiszewski 9f57c82653 Refactor access to g_sprite_list
Hide g_sprite_list behind accessor function with a check. `assert` is
temporarily disabled, as it breaks nearly every park.
2016-07-17 22:19:34 +02:00
Michał Janiszewski a2ce5d5696 Integrate gCurrentVehicle 2016-07-16 14:47:53 +01:00
Michał Janiszewski 601f344b40 Integrate g_music_tracking_viewport 2016-07-16 13:07:01 +01:00