Commit Graph

1469 Commits

Author SHA1 Message Date
Christian F. Coors 9b7e943fab Fix newline for sprite command (#5965) 2017-07-21 16:45:26 +01:00
Gymnasiast 4d23845d4b Fix rides not breaking down 2017-07-20 21:55:29 +02:00
Gymnasiast 636cd5468a Fix RIDE_INITIAL_RELIABILITY 2017-07-20 21:35:11 +02:00
Michael Steenbeek 367efa2020 Use remap flags, SPRITE_ID_PALETTE_COLOUR_1 and _2 in many more places 2017-07-20 20:56:29 +02:00
Michał Janiszewski ee07695cce Manually hoist consts before the loop
It is optimised in release builds, but it will help in debug mode
2017-07-20 19:36:37 +02:00
Michał Janiszewski 8c9da63aa5 Make drawing loop only depend on loop counter (#5954) 2017-07-20 18:09:22 +01:00
Ted John 2eb9657781 Fix premature deletion of dependencies (#5952)
In particular, the object repository can potentially be deleted before the object manager is deleted. This causes a crash when the object manager is deleted because it requires the object repository within the destructor.
2017-07-20 17:44:31 +01:00
Gymnasiast 260f342d73 Fix typos in (unused) defines and comment 2017-07-20 16:18:36 +02:00
Michael Steenbeek bb09019d9b Name and fix vehicle entry and tertiary colour flags 2017-07-20 12:57:37 +02:00
Michael Steenbeek 343e436e45 Import rides in SV6 files per ride and per field 2017-07-19 22:00:48 +02:00
Gymnasiast fc28c0c014 Fix incorrect use of defines 2017-07-19 21:56:11 +02:00
Ted John 957c8b6d2b Merge pull request #5925 from jansegre/develop
Fix: don't show " (DEBUG)" if DEBUG is set but is 0.
2017-07-19 20:41:25 +01:00
Michael Steenbeek 70f1e94ce9 Fix #5946: assertion hit when building new ride 2017-07-19 13:41:24 +02:00
Richard Jenkins fab8efbe2a Implement #5855: Display source game in missing obj window 2017-07-19 11:04:00 +02:00
Gymnasiast f5923dbe99 Create find_first_non_null_station_index() 2017-07-19 08:52:33 +02:00
Michael Steenbeek 72d2c58931 Clean up some rct_xy8 usage; formatting (#5941) 2017-07-18 23:18:19 +01:00
Michał Janiszewski fc59fc7573 Cache last visited node in paint_arrange_structs
This commit caches the last visited node in paint_arrange_structs and
in paint_arrange_structs_helper, which allows skipping iterating over
long linked lists that don't work well with modern CPU caches.

This is especially useful, if the list is walked just to be discarded in
the end.

This improves performance across the board, the busier the park, the
higher performance improvement.

I have verified this producing pixel-perfect results with ones before
this change by dumping giant screenshot on various parks in all zooms,
all rotations.

Results collected running before and after this change with `benchgfx`
command (https://github.com/OpenRCT2/OpenRCT2/pull/5655) on current
title sequence, YMMV.

**Park**|**Before**|**After**|**Delta**
:-----:|:-----:|:-----:|:-----:
Maian\_SOSDragon.sv6|2.80|2.43|-13.2%
Maian\_SOSFrosty.sv6|3.53|3.02|-14.4%
Maian\_SOSParabola.sv6|4.16|3.45|-17.1%
MrB.sv6|5.52|4.52|-18.1%
SpacekKing.sv6|8.53|6.52|-23.6%
SpacekMaple.sv6|7.18|5.75|-19.9%
SpacekMission.sv6|4.41|3.43|-22.2%
SpacekParadise.sv6|9.01|6.36|-29.4%
SpacekSwimmers.sv6|4.11|2.97|-27.7%
Stosky.sv6|3.34|2.36|-29.3%
 | | | 
**Average**|**5.26**|**4.08**|**-21.5%**
2017-07-18 23:01:00 +02:00
Ted John eeeebe5525 Fix #5939: Crash when importing 'Six Flags Santa Fe'
Protect fix_invalid_vehicle_sprite_sizes from invalid vehicle chains.
2017-07-18 17:34:05 +01:00
Gymnasiast 6dddd5b76c Clean up enabledPieces usage 2017-07-18 18:13:00 +02:00
Michael Steenbeek 7a4e7e17a1 Fix incorrect terminology 2017-07-18 18:07:43 +02:00
ZehM4tt ad4eaff323 Fix game not allowing to catch up if rendering is slow.
Refactored game_update to use the given parameters from context.
2017-07-18 15:14:21 +02:00
wolfreak99 c11e925f40 Change CHEATS_MONEY_DEFAULT, CHEATS_MONEY_INCREMENT 2017-07-18 14:57:53 +02:00
wolfreak99 5d1ffd76b5 Move windows/cheats.c/MONEY_DIGITS to localisation.h/MONEY_STRING_MAXLENGTH 2017-07-18 14:57:53 +02:00
wolfreak99 adeaaa8560 Remove extra CHEATS_MONEY_INCREMENT, prefix MONEY_DEFAULT/etc with CHEATS_ 2017-07-18 14:57:53 +02:00
Gymnasiast d51dad91c5 Make ride_entrance_exit_is_reachable() accept an rct_xy8 2017-07-18 13:12:34 +02:00
Gymnasiast 50b993386a Change station_starts to an rct_xy8 2017-07-18 13:12:34 +02:00
Michael Steenbeek ec55224f38 Change ride->overallview to an rct_xy8 2017-07-18 12:22:39 +02:00
Ted John d5732fdf38 Merge pull request #5906 from IntelOrca/refactor/rct2
Move functions out of rct2.c
2017-07-18 09:55:02 +01:00
Michael Steenbeek c0d06498b3 Increase network version because of reliability fixes 2017-07-18 10:51:30 +02:00
Gymnasiast c96ef96edb Clean up rct_ride and rct1_ride structs and usage 2017-07-18 10:50:28 +02:00
Jan Segre 9a2ba06da3 Fix #5924: don't show " (DEBUG)" if DEBUG is set but is 0.
Signed-off-by: Jan Segre <jan@segre.in>
2017-07-17 23:18:20 -03:00
Richard Jenkins 2cfe2e323c Fix #5849: Missing object window cannot be closed with KB shortcut (#5929) 2017-07-17 22:29:28 +01:00
Gymnasiast 7b8248cca7 Change ride->exit into an rct_xy8, cleanup 2017-07-17 20:41:03 +02:00
Gymnasiast c12113475b Turn ride->entrances into an rct_xy8 2017-07-17 19:27:38 +02:00
Hielke Morsink 489c74518c Fix #5920: set correct next peep spawn index 2017-07-17 15:15:31 +02:00
Ted John 01b0047675 Invert Painter dependency
Make painter call into the drawing engine, rather than the drawing engine create and call the painter.
2017-07-16 23:25:11 +01:00
Ted John ac6da51dbb Use IPlatformEnvironment for loading g1.dat 2017-07-16 23:25:11 +01:00
Ted John 33fd31d802 Remove path char arrays which are no longer used 2017-07-16 23:25:11 +01:00
Ted John c33a9f06d9 Remove subsitute_path and refactor gScenarioFilename 2017-07-16 23:25:11 +01:00
Ted John cb884dad11 Refactor rct2_draw to a new Painter class
Right now this is created for each drawing engine, but should eventually be a dependency into them.
2017-07-16 23:25:11 +01:00
Ted John 5614e55f84 Remove more redundant platform functions 2017-07-16 23:25:11 +01:00
Ted John 1394512df6 Remove startup checks 2017-07-16 23:25:11 +01:00
Ted John edcbfdf097 Move rct2_open_file to Context 2017-07-16 23:25:11 +01:00
Ted John f7dff37708 Move copying of user files to Context.cpp 2017-07-16 23:25:11 +01:00
Ted John 73ef6d54a7 Move rct2_init and rct2_dispose into Context 2017-07-16 23:25:11 +01:00
Ted John 7fbcf1ab0b Move rct2_update into Context 2017-07-16 23:25:11 +01:00
Gymnasiast 587d354717 Fix #5895: Publisher credits window scrolls too far 2017-07-15 14:26:21 +02:00
Ted John 1e71618921 Merge pull request #5775 from wolfreak99/land_tool_holdable
Make the land tool holdable
2017-07-15 12:55:44 +01:00
zaxcav 5f150e3893 Increase sync station limit
Increased SYNCHRONISED_VEHICLE_COUNT to 16 to permit duelling coasters with more coasters. Otherwise no changes to the game logic. Feature requested in the forums: https://openrct2.org/forums/topic/2544-synchronized-stations-dont-work-passed-8-stations/

This will impact network games which already have duelling coasters built with more than 8 adjacent stations, so a new network version is necessary.
2017-07-15 13:18:24 +02:00
wolfreak99 68756498f8 Fixed rebase 2017-07-15 12:02:51 +02:00
wolfreak99 7d09486744 Make land tool size holdable 2017-07-15 12:02:51 +02:00
wolfreak99 15cc2a0230 Rename some small scenery flags, tidy up sub_6E1F34 2017-07-15 11:55:20 +02:00
Gymnasiast 34073e10ae Fix Junior RC data files to disable steep inclines, fixes #5902 2017-07-15 10:52:35 +02:00
William Wallace ae110a9159 Allow switching between OpenGL and other renderers without restarting 2017-07-13 19:04:37 +01:00
Tomas Dittmann c1b8230eef Wrap the FileStream creation in try-catch. (#5840) 2017-07-13 18:56:33 +01:00
Ted John fb10a1460d Fix #5858: crash when using custom ride
Add protection against ride objects with no colour presets. Default to black colours.
2017-07-13 18:24:46 +01:00
Tomas Dittmann 77a6207100 add invalid entry pointer guards.
update the changelog
2017-07-13 10:16:34 +02:00
wolfreak99 e7bacc6d84 Apply new mousedown event parameters to windows 2017-07-13 10:15:34 +02:00
wolfreak99 2155aa26fa Begin reorder of "mouse_down" window event parameters 2017-07-13 10:15:34 +02:00
Michał Janiszewski 3d487541d7 Reset network version for 0.1.1 2017-07-12 23:24:33 +02:00
Michał Janiszewski 859861eddb Start 0.1.1 2017-07-12 23:06:29 +02:00
Michał Janiszewski 6d1f732ed6
Release v0.1.0
- Feature: [#1399 (partial), #5177] Add window that displays any missing/corrupt objects when loading a park
- Feature: [#5056] Add cheat to own all land.
- Feature: [#5133] Add option to display guest expenditure (as seen in RCTC).
- Feature: [#5196] Add cheat to disable ride ageing.
- Feature: [#5504] Group vehicles into ride groups
- Feature: [#5576] Add a persistent 'display real names of guests' setting.
- Feature: [#5611] Add support for Android
- Feature: [#5706] Add support for OpenBSD
- Feature: OpenRCT2 now starts up on the display it was last shown on.
- Feature: Park entrance fee can now be set to amounts up to £200.
- Improved: Construction rights can now be placed on park entrances.
- Improved: Mouse can now be dragged to select scenery when saving track designs
- Fix: [#259] Money making glitch involving swamps (original bug)
- Fix: [#441] Construction rights over entrance path erased (original bug)
- Fix: [#578] Ride ghosts show up in ride list during construction (original bug)
- Fix: [#597] 'Finish 5 roller coasters' goal not properly checked (original bug)
- Fix: [#667] Incorrect banner limit calculation (original bug)
- Fix: [#739] Crocodile Ride (Log Flume) never allows more than five boats (original bug)
- Fix: [#837] Can't move windows on title screen to where the toolbar would be (original bug)
- Fix: [#1705] Time Twister's Medieval entrance has incorrect scrolling (original bug)
- Fix: [#3178, #5456] Paths with non-ASCII characters not handled properly on macOS.
- Fix: [#3346] Crash when extra long train breaks down at the back
- Fix: [#3479] Building in pause mode creates too many floating numbers, crashing the game
- Fix: [#3565] Multiplayer server crash
- Fix: [#3681] Steel Twister rollercoaster always shows all track designs
- Fix: [#3846, #5749] Crash when testing coaster with a diagonal lift in block brake mode
- Fix: [#4054] Sorting rides by track type: Misleading research messages
- Fix: [#4055] Sort rides by track type: Sorting rule is not really clear (inconsistent?)
- Fix: [#4512] Invisible map edge tiles corrupted
- Fix: [#5009] Ride rating calculations can overflow
- Fix: [#5253] RCT1 park value conversion factor too high
- Fix: [#5400] New Ride window does not focus properly on newly invented ride.
- Fix: [#5489] Sprite index crash for car view on car ride.
- Fix: [#5730] Unable to uncheck 'No money' in the Scenario Editor.
- Fix: [#5750] Game freezes when ride queue linked list is corrupted.
- Fix: [#5819] Vertical multi-dimension coaster tunnels drawn incorrectly
- Fix: Non-invented vehicles can be used via track designs in select-by-track-type mode.
- Fix: Track components added by OpenRCT2 are now usable in older scenarios.
- Technical: [#5047] Add ride ratings tests
- Technical: [#5458] Begin offering headless build with reduced compile- and run-time dependencies
- Technical: [#5755] Title sequence wait periods use milliseconds
- Technical: Fix many desync sources
2017-07-12 22:12:47 +02:00
Tomas Dittmann 90bb6320e5 Guard against invalid sprite access crashes (#5867)
ride->num_vehicles not matching ride->vehicles[] in
ride_prepare_breakdown() and window_ride_maintenance_dropdown().
2017-07-12 21:23:50 +02:00
ζeh Matt d7f1f13d0c Fix #5866: Don't tween sprites that did not move. (#5875) 2017-07-12 13:23:10 +01:00
Michael Steenbeek da17ac9781 Bump network version 2017-07-12 12:10:21 +02:00
ZehM4tt f000e885d3 Fix desync with "Disable clearance check" while placing rides with footpaths.
Refactored single constant to named flags.
2017-07-12 11:32:27 +02:00
ZehM4tt 250a66c45f Fix game advancing too fast when game was paused/frozen.
Regression from #5848
Added braces.
2017-07-11 21:45:37 +02:00
X123M3-256 a2545d7050 Fix potentially uninitialized variable 2017-07-11 19:57:30 +02:00
X123M3-256 b73c954362 Prevent booster pieces from toggling spinning 2017-07-11 15:55:06 +02:00
Michał Janiszewski ae282f782e Fix #5803: Null map element in onridephoto (#5852) 2017-07-11 12:34:11 +01:00
ζeh Matt ec236f0bf5 Fix platform_get_ticks resolution to match other platforms. (#5843) 2017-07-10 21:46:11 +02:00
ζeh Matt a8af3c7670 Refactor game loop to use a semi-fixed timestep. (#5848)
Fix headless game being jumpy/stuttering.
Bump up network version.
2017-07-10 21:43:20 +02:00
Duncan 454a5d9411 Fix diagonal steep slope support drawing. (#5844)
Mistake during original implementation. Fixes #5148
2017-07-10 08:16:33 +02:00
Richard Jenkins fff3e55e6b Merge pull request #5854 from Chaosmeister/backwardsmotionnullguard
Guard against null in vehicle_update_track_motion_backwards_get_new_track()
2017-07-09 22:17:29 +01:00
Tomas Dittmann e31c4d83db Guard against null in vehicle_update_track_motion_backwards_get_new_track() 2017-07-09 22:52:03 +02:00
Michał Janiszewski ce24a6fb85 Prevent overflowing tunnel count (#5853) 2017-07-09 22:48:21 +02:00
Michał Janiszewski 23882ae7a6 Merge pull request #5814 from rwjuk/spriteguardnull
Guard against NULL in fix_invalid_vehicle_sprite_sizes()
2017-07-09 21:19:49 +02:00
Michał Janiszewski f89e56bbc4 Update exit condition to prevent endless loop 2017-07-09 21:13:37 +02:00
Tomas Dittmann cf1f907138 continue instead of return 2017-07-09 20:42:42 +02:00
Tomas Dittmann a163c2b1b3 prevent crash with hacked spiral slides 2017-07-09 20:42:42 +02:00
duncanspumpkin 540763ad0c Fix tunnel portal drawing for multidim inverted track.
Mistake made from generated code. Missed in #5087. Fixes #5819.
2017-07-09 12:10:04 +02:00
Duncan 7b47438f49 Fix windows x86 debug builds (#5845) 2017-07-09 09:51:02 +01:00
Tomas Dittmann bec1538f48 Improve the error console output. (#5839) 2017-07-09 00:09:46 +01:00
wolfreak99 ac81072597 Fix hold down speed 2017-07-08 10:36:28 +02:00
spacek531 c73e17f02b move the zoom case up to handle it as it was 2017-07-07 17:35:33 +01:00
spacek531 7ecf049e87 add janisozar suggestion
[ci skip]
2017-07-07 17:35:33 +01:00
spacek531 668366bf6b Revert "upgrade save format from uint16 to uint32"
This reverts commit 85757d9fefbacf8b7d07cec9cd9714e2f70f2faa.
2017-07-07 17:35:33 +01:00
spacek531 78ab94b12a upgrade save format from uint16 to uint32 2017-07-07 17:35:33 +01:00
spacek531 bec8b73506 fix saving of milliseconds, loading still beyond knowledge
[ci skip]
2017-07-07 17:35:32 +01:00
spacek531 97bf67e605 add missing curly bracket 2017-07-07 17:35:32 +01:00
spacek531 16167d84f0 clarified comments, changed TITLE_COMMAND_ORDER command to uint16 2017-07-07 17:35:32 +01:00
spacek531 78e25e381c modify saving, add comments
[ci skip]
2017-07-07 17:35:32 +01:00
spacek531 a3acfb4312 Increase digits from 4 to 5
I'm not used to string lengths that are one shorter
2017-07-07 17:35:32 +01:00
spacek531 c1ac654916 fix order of rotate, zoom in clamping 2017-07-07 17:35:32 +01:00
spacek531 c302bec47a fix rotate being able to be set to 0 2017-07-07 17:35:32 +01:00
spacek531 fc71361a9e increase digits for wait, decrease digits for rotate, zoom 2017-07-07 17:35:32 +01:00
spacek531 bd4e8cbd08 change Min to Max 2017-07-07 17:35:32 +01:00
spacek531 ef38a66cc2 begin update editor for ms values
[ci skip]
2017-07-07 17:35:31 +01:00
spacek531 d5610ece54 Remove duplicate line 2017-07-07 17:35:31 +01:00
spacek531 c815a427c0 Change Seconds (internal) to Milliseconds, en-GB too 2017-07-07 17:35:31 +01:00
spacek531 f5bc1b598c removed extra newline, changed tabs to spaces 2017-07-07 17:35:31 +01:00
spacek531 bb8160fa3b Remove extra newline in math.hpp 2017-07-07 17:35:31 +01:00
spacek531 b460401ab6 Removed redundant Ceil 2017-07-07 17:35:31 +01:00
spacek531 ec0f35fe7b added comment 2017-07-07 17:35:31 +01:00
spacek531 cbe154f63b I hope this isn't a joke of a commit
I have no idea.
2017-07-07 17:35:31 +01:00
Richard Jenkins e5b39846b0 Merge pull request #5812 from janisozaur/fix-5795-v2
Fix #5795: Implement sprite cycle checking v2
2017-07-07 17:24:42 +01:00
wolfreak99 6633588179 Add missing cheat_reset toggle 2017-07-07 09:20:27 +02:00
wolfreak99 e5eefca5c0 Add missing cheat log strings 2017-07-07 09:20:27 +02:00
Michał Janiszewski 8d02ce37b5 Fix compilation on MSVC 2017-07-07 07:56:45 +02:00
rwjuk d364b2824f Remove needless null check 2017-07-06 23:35:00 +01:00
Michał Janiszewski a3414502a6 Update network version 2017-07-07 00:17:36 +02:00
Michał Janiszewski 12500dd802 Fixup the disjoint null sprites 2017-07-07 00:14:45 +02:00
Michał Janiszewski f6cb731476 Merge pull request #5802 from rwjuk/fix5800
Fix #5800: Crash when opening server from command line
2017-07-06 23:39:26 +02:00
rwjuk f28db5731f Guard against NULL in fix_invalid_vehicle_sprite_sizes() 2017-07-06 22:29:51 +01:00
Michał Janiszewski 22d0cb99f9 Load title sequence when invalid path was given 2017-07-06 23:25:38 +02:00
Michał Janiszewski ab95988c66 Improve error reporting for detected cycles 2017-07-06 22:28:10 +02:00
Michał Janiszewski 029aea0fc2 Remove reset_empty_sprites
Leave in sprite_clear_all_unused as the safer version
2017-07-06 22:20:07 +02:00
Michał Janiszewski bed085d329 Remove unneeded sprite reset
This is done in all exports now
2017-07-06 22:18:05 +02:00
Michał Janiszewski 07faba7aa5 Re-add sprites that got disconnected in a looped list 2017-07-06 22:17:02 +02:00
rwjuk 00848ca629 Correct sprite cycle fixing algorithm 2017-07-06 19:57:59 +02:00
rwjuk 67cbe2a2a1 Fix compilation issues and restore line that went astray 2017-07-06 19:57:55 +02:00
rwjuk 72a1ad89a3 Remove superfluous parameter 2017-07-06 19:57:52 +02:00
rwjuk 28789c3767 Restore resetting of sprite index 2017-07-06 19:57:46 +02:00
rwjuk 372781cc74 Code quality improvements 2017-07-06 19:57:41 +02:00
rwjuk 247d72b1aa Implement sprite cycle checking 2017-07-06 19:57:37 +02:00
rwjuk 5c0a85df5e Bump network version 2017-07-06 13:22:48 +01:00
rwjuk cc95aa0433 Fix visual corruption caused by zero sprite dimensions
Sprite corruption issue highlight

Fix already bugged saves

Fix visual corruption caused by zero sprite dimensions
2017-07-06 13:22:24 +01:00
Michał Janiszewski aac81163d0 Update network version to avoid confusion 2017-07-06 11:14:42 +02:00
Michał Janiszewski ec7bcfce34 Revert "Fix #5795: Implement sprite cycle checking" 2017-07-06 11:13:12 +02:00
rwjuk ab6d4ee240 Fix black screen on loading file with invalid extension 2017-07-05 23:54:43 +01:00
rwjuk 8224e715d8 Network version bump 2017-07-05 23:34:47 +01:00
rwjuk a586c961fb Correct sprite cycle fixing algorithm 2017-07-05 23:34:47 +01:00
rwjuk 9d338101b9 Fix compilation issues and restore line that went astray 2017-07-05 23:34:47 +01:00
rwjuk 30648df16a Remove superfluous parameter 2017-07-05 23:34:47 +01:00
rwjuk 5cc188076c Restore resetting of sprite index 2017-07-05 23:34:47 +01:00
rwjuk 89bfe1d1bd Code quality improvements 2017-07-05 23:34:47 +01:00
rwjuk 22f88f80b0 Implement sprite cycle checking 2017-07-05 23:34:47 +01:00
Tomas Dittmann 446796db4b Prevent integer overflow in interest calculation (#5724)
Fixes #5635
2017-07-06 00:30:10 +02:00
rwjuk e7512c58ac Fix whitespace 2017-07-05 22:47:53 +01:00
rwjuk 7c2e1b626d Fix #5800: Crash when opening server from command line 2017-07-05 22:08:02 +01:00
Tomas Dittmann 14d14de911 Fix #5205: Prevent the paint loop becoming an infinite loop (#5771) 2017-07-05 18:00:30 +01:00
Gymnasiast ee58ac4882 Fix #4512: invisible map edge tiles corrupted 2017-07-05 18:37:39 +02:00
Michael Steenbeek ae3bc6183f Bump network version 2017-07-05 09:32:50 +02:00
rwjuk 2fb1e40f1a Guard against nullptr in AudioMixer.cpp 2017-07-05 09:32:50 +02:00
rwjuk 68c819c01f Log to console when invalid objects found during check 2017-07-05 07:28:46 +02:00
rwjuk fe140c5c20 Fix #5789: No missing obj notification when loading from cmd line 2017-07-05 07:28:46 +02:00
Richard Jenkins 4e4022d693 Fix #5790: Ride list window does not force refresh on view change (#5791) 2017-07-04 23:03:43 +01:00
Ted John 705ad7c85d Fix #5787: Opening an incomplete ride moves the viewport to unrelated place
Remove ghost elements for track before validating it.
2017-07-04 22:25:23 +01:00
Ted John a558423794 Invalidate missing object list on item click 2017-07-04 21:52:11 +01:00
Gymnasiast b0fece095c Raise maximum entrance fee to £200
It could even be higher, depending on the initial guest cash, but this should do for now
2017-07-04 15:23:12 +02:00
Yaroslav Tretyakov 56987960b3 Add better fix for #3846 #5749 (#5781) 2017-07-04 12:15:15 +01:00
Yaroslav Tretyakov c7de74f132 Fix #3846, #5749: ride_create_vehicles_find_first_block could not handle diagonal blocks (#5778)
* Fix #3846: Testing or opening (certain) rollercoaster causes game to hang
* Fix #5749: Game Crash when I test the roller coaster
2017-07-04 07:43:25 +01:00
Richard Jenkins 048c543fe2 Fix needless double invocation of Memory::Set
Memory::Set() invocations moved to InitialiseEntryMaps() function.
2017-07-03 23:59:19 +01:00
Ted John 0422699539 Fix #5381: Game crashes in editor when scenery or pathing is clicked
Add more defensive checks for when there are no objects loaded.
- Do not open footpath window if there are no footpath objects loaded.
- Prevent crash in scenery window if no scenery groups loaded.
2017-07-03 21:46:07 +01:00
Richard Jenkins aec214c684 Fix #5767: Importing AA/LL SC4s causes a crash 2017-07-03 17:32:05 +01:00
rwjuk dd2ab63b26 Fix #5765: Peep purchase animation shows for $0.00 2017-07-03 15:50:50 +02:00
Ted John 32e8737796 Merge pull request #5758 from rwjuk/fix5756
Fix #5756: Only refresh ride list window every 64 ticks for performance
2017-07-03 07:57:04 +01:00
Ted John 146982d4b0 Fix #5750: OpenRCT2 locking up consistently, no reports (#5757)
Prevent freezing on corrupted ride queues by ignoring sprites that are not guests when a guest re-joins the front of the queue.
2017-07-03 07:56:34 +01:00
rwjuk a941400403 Refactor window_ride_list_refresh_list() to single loop 2017-07-02 21:32:20 +01:00
rwjuk 398004901b Only refresh ride list window every 64 ticks for perf. 2017-07-02 20:49:39 +01:00
Ted John cb28381990 Merge pull request #5746 from IntelOrca/fix/5507
Fix #5507: RCT1 path check is case-sensitive on Linux
2017-07-02 12:18:40 +01:00
Ted John 09bb7bfd6c Allocate strings with new instead of malloc 2017-07-02 11:37:01 +01:00
Ted John fd2eda921f Merge pull request #5705 from Broxzier/hardcoded-values
Replace -1 with SPR_NONE for viewport sprite, sort some includes
2017-07-02 00:08:33 +01:00
Ted John 46d8287bd9 Merge pull request #5624 from rwjuk/objectwindow
Implement window displaying object load failures
2017-07-02 00:07:17 +01:00
Ted John 14443b30f1 Fix #5751: Title sequence seconds are about 0.8 seconds 2017-07-02 00:04:32 +01:00
Ted John 3ca84dcc17 Refactor vehicle logic related to #5749 2017-07-01 12:24:38 +01:00
Broxzier 29fb31c69c Remove 'static const' that slipped in 2017-07-01 11:45:43 +02:00
Luke Lau 027be6010d Fix #5583: Right click to drag camera after menu (#5748)
Reset the input state to normal after receiving a right click outside of a dropdown.
2017-07-01 01:35:51 +01:00
Ted John 5db0a05f11 Fix #5658: Assertion failed errors in peep.c (#5747)
Protect edge cases that occur in various hacked parks:
* Current station <-> ride exits
* Current seat <-> peep load positions
2017-07-01 01:31:19 +01:00
Ted John ddb96ec267 Refactor load park result
Use a C++ struct and pass that to C.
2017-07-01 01:29:35 +01:00
Ted John d75295b027 Move handle_park_load_failure into game.c 2017-07-01 01:29:34 +01:00
Ted John c3356d457e Fix S4s never loading if no object errors 2017-07-01 01:29:34 +01:00
rwjuk ab38c07fb9 Make object window work with S4s and scenarios 2017-07-01 01:29:34 +01:00
rwjuk 214bf3988b Implement 'missing objects' window
Implement 'missing objects' window

Basic implementation of 'bad objects' window

Add new object_load_error.c

Add object_load_error.c

Faffing about

String stuff

Stuff

Get window basically displaying

Proper col header for object

Display object types

Display file name and explanatory message

Probably about time I added myself to the dev list

Cleanup and comments

Make bad object window work with SC6

Fix whitespace, string IDs, flip core function sense

Fix spacing in string_ids.h

Fix string ID snafu

Fix HasNoInvalidObjects() sense

Attempt to refactor this to pass data properly

Move typedefs to separate header

Fix up signatures

Add park_load_result_types.h

Clean up includes and remnants of prev implementation

Split duplication into function, free invalid entries list on close

Use pointer for object_validity_result param

Fixup string IDs

Use LoadObject() directly

Use dependency injection, fix string termination

Xcode fix, make helper function static

Fix buffer overrun and memory leak

Use SDL for clipboard functionality

Fix function & variable declarations

Rework editor_read_s6() to use new park load result type

Update changelog for #5624

[ci skip]

Fix mem leak, function signature and whitespace
2017-07-01 01:28:51 +01:00
Ted John 52555df089 Merge pull request #5738 from Gymnasiast/fix/5253
Fix #5253: RCT1 park value conversion factor too high
2017-06-30 23:13:19 +01:00
Michael Steenbeek bcbccba3e6 Create track sequence direction flags (#5744) 2017-06-30 23:11:47 +01:00
Michael Steenbeek 44af1653a6 Replace 'center' with 'centre' (#5745) 2017-06-30 23:11:28 +01:00
Ted John f515314a2d Only warn if object export can not fix checksum 2017-06-30 22:25:27 +01:00
Ted John e9519d2d8b Fix #5507: RCT1 path check is case-sensitive on Linux
If the csg path does not exist, find the first file in the directory that matches (case insensitive).
2017-06-30 21:11:35 +01:00
Gymnasiast 6206fbda80 Do not reuse _parkValueConversionFactor of previous S4 2017-06-30 16:02:57 +02:00
Gymnasiast fea2c66036 Name remaining TRACK_ELEM_FLAGs 2017-06-30 14:37:26 +02:00
Ted John 659ccc03d0 Merge pull request #5740 from OpenRCT2/bugfixes
Fix chat sounds
2017-06-30 00:22:53 +01:00
zsilencer ef6ecc8900 Set correct pan for chat sound. 2017-06-29 15:54:21 -06:00
Michał Janiszewski 1e21b150ae Fix missing newlines in various files 2017-06-29 23:31:03 +02:00
zaxcav b39723a0a8 Allow mechanics to walk over wide tiles on the edge of the patrol zone 2017-06-29 20:34:37 +02:00
Ted John 50c8fefb35 Fix bug in sprite_move, add sprite null check 2017-06-29 19:25:59 +01:00
Ted John 2fffeb9470 Set the map to blank if no title sequences can load 2017-06-29 19:24:28 +01:00
Reece f581d52355 Disable money effect in pause mode 2017-06-29 20:12:36 +02:00
Gymnasiast 50a7c40fbd Fix #5253: RCT1 park value conversion factor too high 2017-06-29 20:08:59 +02:00
Gymnasiast 9148b98928 Fix #667: Incorrect banner limit calculation 2017-06-29 19:18:08 +02:00
Gymnasiast 4e87ad6ac3 Properly check 'Finish 5 roller coasters' criteria, fixes #597
This fixes the following things:
- The objective was not available when using money (despite it being used on such scenarios in RCT1)
- The scenario editor set the 'partially finished flag' on every single ride
- The scenario editor did not check if there were five finished roller coasters
- When checking the goal, there was no check if the ride was a roller coaster
- When checking the goal, there was no check if the ride was one of the roller coasters to be completed
2017-06-29 17:32:12 +02:00
Richard Jenkins 74a14505cd Fix #578: Ride ghosts show up in ride list during construction 2017-06-29 16:39:48 +02:00
Ted John e265fa8948 Fix crash when headless server creates money fx (#5729)
Ensure headless instances of the game, which do not have graphics loaded, do not try to measure the string for new money effect sprites.
2017-06-29 12:30:49 +01:00
Gymnasiast 6483705d2c Make CIs happy about return paths 2017-06-29 12:06:29 +02:00
Gymnasiast 194cc4dcb3 Fix #5730: Unable to uncheck 'No money' in the Scenario Editor 2017-06-29 12:01:30 +02:00
Michael Steenbeek 251ead0531 Fix #441: Construction rights over entrance path discarded; refactor 2017-06-29 11:30:18 +02:00
Ted John 4cc6743446 Merge pull request #5714 from Gymnasiast/refactor-land-rights-window
Refactor land rights window
2017-06-28 12:42:42 +01:00
Zeh Matt a8efd2cc4d Fix #5676: Last action issues
LastActionTime using server tick instead of real time platform ticks. (#5722)
2017-06-27 14:50:21 +01:00
Ted John f08db17d94 Merge pull request #5713 from rwjuk/fix5707
Fix #5707: Usernames aren't detected for multiplayer
2017-06-27 13:27:21 +01:00
Richard Jenkins 1893326b62 Check for file existence before releasing config in config_open() (#5712) 2017-06-27 13:23:16 +01:00