1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-15 11:03:00 +01:00
Commit Graph

12001 Commits

Author SHA1 Message Date
Michael Steenbeek
38b26e0ac4 Fix #8456: Junior booster track piece doesn't connect properly 2018-12-18 22:41:01 +01:00
ζeh Matt
183e508c4d Merge pull request #8465 from ZehMatt/fix-8464
Fix #8464: Crash on game shutdown.
2018-12-18 00:55:22 +01:00
Michał Janiszewski
ea61be5ebe Prevent logging from using already-freed game command (#8473)
gc variable is held by reference in the scope above, pointing to the
queue's beginning.
2018-12-17 23:56:01 +01:00
Matt
8e2e60b117 Fix #8464: Crash on game shutdown. 2018-12-17 23:51:43 +01:00
ζeh Matt
3cc6e1ab15 Fix #8469: Crash modifying colour on hacked rides. (#8470) 2018-12-17 16:27:45 +01:00
Ted John
abbdab9b6d Merge pull request #8452 from IntelOrca/change-structures
Change a few structures from fixed to C++
2018-12-16 19:01:36 +00:00
Ted John
1d6d734c1c Fix build 2018-12-16 19:01:15 +00:00
Ted John
08b02943d3 Use std::string for scenario name, details etc. 2018-12-16 19:01:14 +00:00
Ted John
4195f0d9c9 Change gPeepSpawns to a vector so we can now have more than 2 2018-12-16 19:00:16 +00:00
Ted John
19a687f2fa Change gParkEntrance to a vector so we can now have more than 4 2018-12-16 19:00:16 +00:00
Michael Steenbeek
59f9476ecd Change 'entrance style' to 'station style' 2018-12-16 19:38:30 +01:00
Michael Steenbeek
e2a91e55e5 Fix compile error in EditorObjectSelection.cpp 2018-12-16 17:10:45 +01:00
Gymnasiast
6031a9bc27 Fix SV4 import error 2018-12-16 12:49:30 +01:00
Gymnasiast
75d094e135 Fix another omission from #8453 2018-12-16 10:10:26 +01:00
Michael Steenbeek
d145ae6922 Fix #8450: Track designer window has drawing problems and crashes 2018-12-16 10:02:40 +01:00
ζeh Matt
7d19a5bc77 Refactor memcpy to std::memcpy and memset to std::memset (#8408) 2018-12-15 22:23:31 +01:00
Gymnasiast
748da25f78 Fix omission from #8453 2018-12-15 21:34:14 +01:00
Michael Steenbeek
7d7e8e2638 Merge pull request #8453 from Gymnasiast/fix/8033
Fix #8033: Crash when placing 64th sign
2018-12-15 21:24:09 +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
Gymnasiast
806073ec59 Fix 'Object index exceeds maximum' spam 2018-12-15 20:34:28 +01:00
Gymnasiast
600d32807d Fix #8033: Crash when placing 64th sign 2018-12-15 20:34:28 +01:00
Gymnasiast
0d775f48ec Clean up scenery ghost flags 2018-12-15 20:31:41 +01:00
ζeh Matt
d88a9048f9 Fix #8431: crash when game action logging is enabled. (#8447) 2018-12-15 18:41:55 +00: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
Hielke Morsink
f53bf5508b Merge pull request #8335 from ZehMatt/vehicle-crash-fix
Fix hacked rides with no vehicles crashing the game.
2018-12-14 21:01:59 +01:00
Michael Steenbeek
596f30313b Merge pull request #8439 from IntelOrca/fix-8433
Fix #8433 and #8434
2018-12-14 20:32:15 +01:00
ζeh Matt
a78a6f2a33 Fix #8349: Ride's exit is rendered incorrectly while building it 2018-12-14 20:08:18 +01:00
Ted John
fecf4ac3e8 Fix #8434: Crash if curl_easy_init fails 2018-12-14 17:10:50 +00:00
Ted John
e2e2d4b7bf Fix #8433: Crash if master server response is not valid JSON
Protect fetch_servers_callback from bad JSON responses
2018-12-14 17:10:50 +00:00
Matt
f0bd72732c Fix hacked rides with no vehicles crashing the game. 2018-12-14 00:04:35 +01:00
Ted John
ab53c69c3c Use new CanGrow method on surface element which uses object property 2018-12-11 23:31:06 +00:00
Ted John
2da8e18200 Read the canGrow flag from surface objects 2018-12-11 23:00:59 +00:00
Michael Steenbeek
cf44ea7e24 Fix #3832: Track piece colour scheme paint not network-safe 2018-12-11 22:17:52 +01:00
Michał Janiszewski
23dc14b286 Improve checks for object files (#8417) 2018-12-11 19:35:27 +01:00
Ted John
7c3401603d Change mallocs to new[] 2018-12-10 21:14:07 +00:00
Ted John
e13d6da81f Prevent possible stack overflow if zoom offset is 0 2018-12-10 19:54:54 +00:00
Ted John
76d761c299 Fix #8414: Rides tab in object selection window is broken
Widgets were still being created for disabled object types which were placed at same position as ride tab.
2018-12-10 19:50:12 +00:00
Ted John
85b443fc15 Fix #8411: Save game failed!
Do not try to pack our new object types (stations and surfaces) into saved games.
2018-12-10 15:14:50 +00:00
Ted John
cefa4c3935 Fix #8410: Grass is broken
Add zoom images to the very end of the image table so the offsets of the images are not changed.
2018-12-10 11:57:50 +00:00
Ted John
9dc860b526 Fix compile errors 2018-12-10 00:26:12 +00:00
Ted John
4b77d76303 Hide new object tabs until we have new save format 2018-12-09 23:30:40 +00:00
Ted John
74793a3931 Update objects version 2018-12-09 23:30:40 +00:00
Ted John
ef57f1a403 Fix zoomed out images 2018-12-09 23:30:40 +00:00
Ted John
06f203a7e7 Implement surfaces, edges and stations as objects 2018-12-09 23:30:40 +00:00
roosen5
d9806305b0 Fix #8358: infinite loop when changing vehicle count on stopped ride. (#8375)
The sprite_remove in Sprite.cpp tries to find itself inside the quadrant.
It does not find itself, and because the rest of the code assumes that it will always find it
The normal code tries to set the value of the next_in_quadrant so that whoever points at it, will now point at its next sprite.
But because it didn't find whoever was pointing to it, it would set the pointer to SPRITE_INDEX_NULL to its next sprite.
This would lead to cycles in the linked list

The reason that the sprite was not found is that during the entry of a ride, the position of a peep is set to LOCATION_NULL
Exiting a ride sets it back to whatever the location is of an exit.
However stopping a ride that still has people in it would go wrong, as the people are removed from the ride through ride_remove_peeps

This function was called during the PaintWindows.
The fact that this function is called during the painting is the problem, because of the tweening:
Before painting all the positions are stored (Which would at that point be the LOCATION_NULL), during the painting
the peep would be removed from the ride, setting their location to the enrance/exit
After painting is done all the positions are restored again, so the patched position is forgotten and then it would be
removing a sprite with location LOCATION_NULL and that goes wrong

The fix is to have the window update outside of paint
2018-12-09 20:46:04 +01:00
ζeh Matt
04af3932ac Fix #5684: Refactor player list updates being bound on ticks. (#8399) 2018-12-09 20:39:44 +01:00
ζeh Matt
f69c95f907 Fix #8392: prevent crash due to inconsistent player list updating. (#8397) 2018-12-09 10:18:23 +01:00
Michał Janiszewski
eca13b99ed Merge pull request #8367 from ZehMatt/paint-refactor2
Paint refactor
2018-12-05 23:46:21 +01:00
Michał Janiszewski
cec86469f0 Improve imported object handling (#8372)
Reject and report invalid objects rather than triggering assert.
2018-12-05 23:12:22 +01:00