duncanspumpkin
9d76c609f3
Provide conversion from gamecommand in replay manager
2019-02-27 08:15:11 +00:00
duncanspumpkin
e1977d1a2f
Remove references to game command
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
Ted John
aa7d181070
Define constants for vehicle type
2019-02-26 16:49:29 +00:00
duncanspumpkin
d5ad6b7b0f
Move game command calls to a single call site
2019-02-26 12:47:44 +00:00
Michael Steenbeek
5b0367ea0e
Merge pull request #8774 from duncanspumpkin/ghost_refactor
...
Use IsGhost() to access ghost state
2019-02-26 12:46:16 +01:00
duncanspumpkin
eb9ecea92e
Add IsGhost to the testpaint calls
2019-02-26 08:50:04 +00:00
duncanspumpkin
5facc32100
Increment network version
2019-02-26 08:15:32 +00:00
duncanspumpkin
07b372f4c6
Make review changes fix clang format
2019-02-26 08:14:57 +00:00
duncanspumpkin
c1546a92b7
Implement RideSetVehicleAction
...
Move all callees to the new action.
Required rework on how the ride type change worked.
2019-02-26 08:14:57 +00:00
Michał Janiszewski
b957ad5e9e
Remove redundant move ( #8778 )
2019-02-26 06:41:01 +01:00
Ted John
a3af56f285
Fix formatting
2019-02-25 22:31:14 +00:00
duncanspumpkin
112b40910b
Pass a bool to the set function. Make review changes
2019-02-25 20:44:12 +00:00
Matt
f0366b84e4
Fix ride_shop_connected dereferencing null.
2019-02-25 20:58:41 +01:00
Ted John
bac3168a23
Refactor IsChild to IsHead
2019-02-25 17:58:22 +00:00
Ted John
ca807c5ed4
Refactor some IsChild references to GetHead
2019-02-25 17:51:25 +00:00
duncanspumpkin
737c308e4e
Use IsGhost() to access ghost state
...
Added set and clear ghost to further prevent direct access to flags
2019-02-25 15:12:35 +00:00
duncanspumpkin
6890f4f756
Use quarter tile for map can construct at
...
Make callees of map_can_construct_with_clear use QuarterTile
Use quarter tile for small scenery rotation
Fix clang format
Further clang format
2019-02-25 13:51:08 +00:00
duncanspumpkin
f9fe09634c
Move quarter tile class to the tile element header.
...
Refactor flags slightly
2019-02-25 13:51:07 +00:00
duncanspumpkin
921062d073
Start transferring trackdata to use the seperate values
...
Finish the conversion
2019-02-25 13:51:04 +00:00
duncanspumpkin
dffa56aca2
Create a class for the quarter tile
...
Finish implementing TrackQuarterTile
Rename class
2019-02-25 13:51:00 +00:00
Ted John
520b1b4819
Try out changed sprite structs for main game
2019-02-25 12:29:31 +00:00
Ted John
08e560da28
Merge pull request #8735 from IntelOrca/refactor/sprite-import-export
...
Refactor sprite import / export
2019-02-25 12:25:59 +00:00
Duncan
94b5133388
Merge pull request #8737 from duncanspumpkin/load_or_quit_ga
...
Add LoadOrQuitAction
2019-02-25 11:28:57 +00:00
Michael Steenbeek
ec2d609200
Merge pull request #8734 from Broxzier/feature/multiplayer-tweaks
...
Disable kick button when unable to use it + slight refactor
2019-02-25 10:34:56 +01:00
Ted John
08508cc638
Fix #8739 : savegame from original game crashes when cruising through map ( #8746 )
2019-02-24 23:23:41 +00:00
Ted John
a6e7041f49
Fix #8769 : Segmentation fault on host
2019-02-24 23:22:43 +00:00
duncanspumpkin
2d1ed8ce05
Fix interactive console staff set costume command.
...
After the refactor to GameActions, forgot to actually issue the command after generating it.
2019-02-24 18:10:07 +00:00
ζeh Matt
92b6ed5a94
Merge pull request #8751 from ZehMatt/fix-8741
...
utf8* string refactor.
2019-02-24 17:33:37 +01:00
Duncan
6a0cff2676
Fix being unable to refund when in negative money
2019-02-24 17:31:43 +01:00
Ted John
d31e92e652
Fix #8742 : access violation in vehicle_update_sound_params
2019-02-24 16:49:03 +01:00
Ted John
81d41895d2
Fix divide by zero in ride_prepare_breakdown
2019-02-24 11:57:05 +00:00
Nathaniel Ngo
300fd3a589
Fix for Issue#8725: refactoring _currentTrackBegin and _previousTrackPiece to use CoordsXYZ struct ( #8759 )
...
* Refactored _currentTrackBeginX, _currentTrackBeginY, _currentTrackBeginZ to use a CoordsXYZ struct
* Refactored _previousTracPieceX, _previousTrackPieceY, _previousTrackPieceZ to use a CoordsXYZ struct
* Refactored _currentTrackBegin and _previousTrackPiece in source files
* Fixed clang formatting
2019-02-24 09:15:31 +00:00
Matt
a7f8c8aa36
Refactor utf8* use over std::string
2019-02-24 00:08:05 +01:00
duncanspumpkin
b60d97ef55
Use enum values for the savePromptMode
2019-02-22 09:08:04 +00:00
duncanspumpkin
dac1b9ab4a
Fix ci issues
2019-02-22 09:01:40 +00:00
duncanspumpkin
c24c6bdf0a
Remove references to old game command
2019-02-22 09:01:39 +00:00
duncanspumpkin
eadef45ffd
Add LoadOrQuiteAction
2019-02-22 09:00:38 +00:00
Hielke Morsink
d460443305
Introduce network permission enum
...
This enum needs to match the vector. To make sure their sizes are equal,
the vector has been changed to an std::array.
2019-02-21 19:50:07 +01:00
duncanspumpkin
a8cf6381da
Make changes for set last network position change
2019-02-21 16:04:26 +00:00
duncanspumpkin
71bdd28022
Increment network version
2019-02-21 16:00:31 +00:00
duncanspumpkin
7cbed69816
Make changes from review
2019-02-21 16:00:31 +00:00
duncanspumpkin
1227bc09fc
Remove references to game command
2019-02-21 16:00:31 +00:00
duncanspumpkin
3a615c2126
Use new game action for callees
2019-02-21 16:00:31 +00:00
duncanspumpkin
e8b2c0f16f
Add TrackRemoveAction
2019-02-21 16:00:31 +00:00
Matt
92d73e2fab
Set last player position based on game action result.
2019-02-21 15:51:00 +01:00
Ted John
3b7b46706c
Export sprites field by field
2019-02-20 23:51:43 +00:00
Ted John
b77bc56a52
Copy vehicle structure for S6
2019-02-20 23:31:14 +00:00
Ted John
c0e4eff9f1
Start copying sprite structures for RCT1 and RCT2
2019-02-20 23:31:14 +00:00
Ted John
ddaddf59c6
Import misc sprites field by field
2019-02-20 23:31:14 +00:00
Ted John
67ae973ac8
Import peep field by field
2019-02-20 23:31:14 +00:00
Ted John
1b83b9881b
Import vehicle field by field
2019-02-20 23:31:14 +00:00
Ted John
9960397f2c
Import litter field by field
2019-02-20 23:31:14 +00:00
Duncan
9a746c4fc1
Merge pull request #8733 from duncanspumpkin/fix_pause
...
Fix pause
2019-02-20 19:41:56 +00:00
duncanspumpkin
768321c517
Increment network version
2019-02-20 19:14:24 +00:00
duncanspumpkin
3467941310
Fix #8732 GameActions not working when in negative money.
...
Related to the simplification to the finance code
2019-02-20 19:14:10 +00:00
Ted John
440511afc5
Use uint16_t for marketing probability
2019-02-20 16:51:19 +00:00
Michael Steenbeek
dfa0c528c2
Rename command to forbid_marketing_campaigns
...
Co-Authored-By: IntelOrca <ted@brambles.org>
2019-02-20 16:49:03 +00:00
Ted John
4013479094
Refactor marketing to be a single vector
2019-02-20 16:49:02 +00:00
Ted John
261dd32697
Refactor peep_interact_with_path to prevent null ride warnings ( #8728 )
2019-02-20 16:47:38 +00:00
duncanspumpkin
d959657346
Increment network version
2019-02-19 15:22:29 +00:00
duncanspumpkin
9b6fdd41aa
Remove redundant code. Rename to standard style
2019-02-19 15:20:55 +00:00
duncanspumpkin
6375d2537a
Move and refactor shop interact with path code to prevent possible desync
2019-02-19 15:20:49 +00:00
duncanspumpkin
09bb99d9e8
Fix clang format and travis errors
...
Minor refactor
Move key callback code into callbacks. Fixes shop placement
Use rotate_map_coordinates
2019-02-19 12:31:22 +00:00
duncanspumpkin
4d3c594e47
Provide a translation for the replay manager
2019-02-19 12:31:22 +00:00
duncanspumpkin
8bf3689d42
Introduce flag to prevent ghosts in multiplayer
...
Fix error message arguments
Remove dead code. Fix clang format
2019-02-19 12:31:11 +00:00
duncanspumpkin
77b25714ff
Move callbacks into GameActionCallbacks
...
Remove remaining references to game command
2019-02-19 12:30:42 +00:00
duncanspumpkin
650e8291d0
Start moving track place into GameAction framework
2019-02-19 12:30:33 +00:00
Ted John
cce979f96b
Remove logic for required objects ( #8718 )
...
This allows TARMAC to be removed when `remove_unused_objects` is called.
2019-02-19 11:55:43 +00:00
ζeh Matt
8a6dd5c4dd
Fix #8720 : Desync due to boats colliding with ghost pieces
2019-02-19 11:39:48 +01:00
Matt
d7ff3854a9
Bump up network version.
2019-02-18 17:20:18 +01:00
Matt
a6c6d6ddc3
Update checks for when money is required.
2019-02-18 17:19:44 +01:00
Matt
21e4c52853
Use finance_check_affordability instead of CheckActionAffordability
2019-02-18 17:19:44 +01:00
Matt
914bf3a0c6
Add finance_check_money_required and finance_check_affordability helper functions.
2019-02-18 17:19:44 +01:00
ζeh Matt
a1d1669492
Merge pull request #8713 from ZehMatt/replay-bpb
...
Add bpb.sv6 to the replays with 7000 ticks.
2019-02-18 13:38:22 +01:00
Matt
3f07fd6bed
Bump up network version.
2019-02-17 10:12:02 +01:00
Matt
7a18fc4b96
Fix ClearAction breaking out of the loop too early.
2019-02-17 10:12:02 +01:00
Matt
597b0956fc
Fix SmallSceneryRemoveAction returning no error on invalid coordinates.
2019-02-17 10:12:02 +01:00
Matt
5f02c480c2
Fix FootpathRemoveAction crashing with invalid coordinates.
2019-02-17 10:12:02 +01:00
Matt
2d78eace05
Use QueryInternal in ExecuteInternal.
2019-02-17 10:12:02 +01:00
Matt
a630c17e92
Fix ReplayManager testing checksums out of order.
2019-02-16 09:10:05 +01:00
ζeh Matt
416915c883
Merge pull request #8711 from ZehMatt/ga-toplevel
...
Refactor direct calls to Query and Execute on game actions.
2019-02-15 17:07:53 +01:00
Matt
00be865ff1
Use ExecuteNested/QueryNested instead of passing a parameter.
2019-02-15 16:32:11 +01:00
Duncan
79ccc8ca32
Merge pull request #8705 from phillipwalters/develop
...
Removed dead code per issue 8677 (https://github.com/OpenRCT2/OpenRCT2/issues/8677 )
2019-02-15 13:58:57 +00:00
Matt
16e371c792
Bump up network version.
2019-02-15 09:01:38 +01:00
Matt
60ec1da0f8
Remove direct calls to Execute Query on action.
2019-02-15 08:55:01 +01:00
Matt
22811e0e85
Remove direct calls to Execute Query on action.
2019-02-15 08:50:48 +01:00
Matt
46c9bcc4bc
Remove direct calls to Execute Query on action.
2019-02-15 08:47:07 +01:00
Matt
caa490642c
Refactor GameActions to allow non-top level actions.
2019-02-15 08:43:05 +01:00
Michael Steenbeek
2a4215a30f
Create constant for SCROLLING_MODE_NONE
2019-02-14 22:41:48 +01:00
ζeh Matt
d143c7b7c6
Fix 8698 ( #8709 )
2019-02-14 22:09:16 +01:00
Ted John
8c2872ad1e
Fix gcc
2019-02-13 22:51:10 +00:00
Ted John
eaa671632f
Fix formatting
2019-02-13 20:31:55 +00:00
Ted John
ba445cb6ef
Pass Ride* instead of ride_id_t
2019-02-13 20:16:42 +00:00
Phillip Walters
b7787daa9f
More formatting changes.
2019-02-12 18:02:33 -08:00
Phillip Walters
11ff0b6688
Cleaned up some formatting
2019-02-12 17:53:39 -08: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
fd090f5ef3
Refactor PickRideToGoOn
2019-02-12 23:29:38 +00:00
Ted John
9706dd8675
Pass Ride* instead of ride_id_t
2019-02-12 23:29:37 +00:00
Ted John
e361655b10
Pass Ride* instead of ride_id_t
2019-02-12 23:29:37 +00:00
Ted John
aaacece0ea
Pass Ride* instead of ride_id_t
2019-02-12 23:29:37 +00:00
Phillip Walters
28d4446da4
Re-added some code that shouldn't have been removed and removed some other code that I missed last time.
2019-02-11 18:58:56 -08:00
duncanspumpkin
af65bc33e7
Increment network version
2019-02-11 10:57:58 +00:00
duncanspumpkin
c87430e09d
Turn off clang format
2019-02-11 10:57:31 +00:00
duncanspumpkin
866d143930
Move Pause Toggle into the GameAction framework
2019-02-11 10:46:12 +00:00
Phillip Walters
14835b9e31
Removed dead code per issue 8677 ( https://github.com/OpenRCT2/OpenRCT2/issues/8677 )
2019-02-10 18:17:05 -08:00
Michael Steenbeek
76603ad1b3
Fix #8696 : Setting land height costs money in no-money scenarios
2019-02-10 22:14:23 +01:00
Michał Janiszewski
5e74f7487d
Merge pull request #8700 from janisozaur/icc-fixes
...
Icc fixes
2019-02-10 12:21:33 +01:00
ζeh Matt
20989ae4d8
Merge pull request #8675 from tomlankhorst/compress-replays
...
.sv6r version 2: introducing compression
2019-02-10 11:01:26 +01:00
Michał Janiszewski
9da931d5e7
Remove offsetof for non-POD data
2019-02-10 00:20:34 +01:00
Michał Janiszewski
838289abce
Mark functions as static
2019-02-10 00:20:34 +01:00
Michał Janiszewski
379fd42dc4
Fix types passed to ride_type_has_flag
2019-02-10 00:04:52 +01:00
Michał Janiszewski
70ef8151fc
Fix types passed to printf-like functions
2019-02-10 00:04:52 +01:00
ζeh Matt
be491d3c6f
Bump network version
2019-02-09 23:27:26 +01:00
Matt
02a14d3883
Move setting common price into RideSetCommonPrice
2019-02-08 18:03:06 +01:00
Matt
9508044aa7
Add missing member to serialisation.
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
Matt
a5e48e759d
Implement RideSetPriceAction.
2019-02-08 18:03:06 +01:00
duncanspumpkin
640337159a
Increment network version
2019-02-08 14:08:55 +00:00
duncanspumpkin
44cd8c3150
Refactor. Add CoordsXY to data serialiser
2019-02-08 14:08:26 +00:00
duncanspumpkin
ea585950f6
Refactor. Split out into multiple functions.
2019-02-08 14:08:26 +00:00
duncanspumpkin
fd7f9fefca
Move Land Set Height over to GameAction Framework
2019-02-08 14:08:26 +00:00
Ted John
907e43acd8
Merge pull request #8670 from IntelOrca/feature/download-objects
...
Auto-download missing objects
2019-02-08 12:55:05 +00:00
ζeh Matt
436f15f22e
Merge pull request #8692 from ZehMatt/gameaction-things
...
Handle unregistered game actions with error logging.
2019-02-07 23:39:11 +01:00
Ted John
535b075310
Reduce button text further and add tooltips
2019-02-07 22:00:30 +00:00
Ted John
3aa55ff875
Refactor and improve download of objects
2019-02-07 21:59:15 +00:00
Ted John
5fb3c10c3a
Make download objects async with progress
2019-02-07 21:59:15 +00:00
Ted John
27f70e3656
Get basic object downloading working
2019-02-07 21:58:34 +00:00
ζeh Matt
f5e24bd973
Merge pull request #8652 from ZehMatt/network-window
...
Network window
2019-02-07 21:10:03 +01:00
Duncan
d03bd95598
Register the ride set appearance action to prevent server crash ( #8691 )
...
* Register the ride set appearance action to prevent server crash
* Bump network version
* Copy the type back when deserialising
This should really be fixed by adding RideSetAppearanceType to the dataserialiser
* Switch the types to prevent possible serialiser issues
2019-02-07 19:53:09 +00:00
Matt
598ea08529
Update copyright.
2019-02-07 18:50:58 +01:00
Matt
0d1c8b8d31
Fix CircularBuffer push_back method.
2019-02-07 18:50:58 +01:00
Matt
57eccef347
Move format_readable_size and format_readable_speed into Localisation
2019-02-07 18:50:58 +01:00
Matt
16bf190f7a
Use localisation for speed and size information.
2019-02-07 18:50:58 +01:00
Matt
a26e9231cf
Simplify CircularBuffer
2019-02-07 18:50:58 +01:00
Matt
ecd4f61115
Add Network window
2019-02-07 18:50:58 +01:00
Matt
2931ac6e31
Track bytes sent and received in Network.
2019-02-07 18:50:58 +01:00
Matt
e4f1b12fa4
Add CircularBuffer.
2019-02-07 18:50:58 +01:00
Matt
1553cf8c58
Bump up network version.
2019-02-07 18:36:44 +01:00
Matt
b071be49bd
Add checks for unregistered game actions and report errors.
2019-02-07 18:35:03 +01:00
Matt
ee00143f3a
Throw assert only in debug builds for missing game actions.
2019-02-07 18:23:58 +01:00
Aaron van Geffen
3be6137fde
Rename event_07 to periodic_update. ( #8684 )
2019-02-07 17:46:52 +01:00
duncanspumpkin
bca79da193
Check for null id
2019-02-07 11:41:54 +00:00
duncanspumpkin
5e319a4a37
Increment network version
2019-02-07 10:16:20 +00: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
Aaron van Geffen
2a416dce81
Set more maze error messages in MazeSetTrackAction. ( #8683 )
2019-02-07 00:29:50 +01:00
Duncan
b27923093c
Fix #7987 : Broken track designs increase money by MONEY32_UNDEFINED
2019-02-06 22:20:42 +01:00
Michał Janiszewski
c42ded66b2
Fix #8674 : Negative values not displaying correctly
2019-02-06 22:18:58 +01:00
Michał Janiszewski
ad888fbf9d
Require at least 1.4 version of benchmark ( #8681 )
2019-02-06 21:30:33 +01:00
Tom Lankhorst
ddfbaac13f
Fix MSVC type conversion warning
2019-02-06 12:13:59 +01:00
Tom Lankhorst
72519d8bb8
do not use designated initializer
2019-02-06 11:28:39 +01:00
Tom Lankhorst
e24314bb5a
Fix syntax error and add <memory>
2019-02-06 11:06:16 +01:00
Tom Lankhorst
706d1be865
Avoid illegal ptr conversions
2019-02-06 10:38:25 +01:00
Tom Lankhorst
f48f347798
Internally compress (zlib lvl.9) replay files
...
This effort reduces the size of replays by a factor 2 to 10 depending on
the park complexity. ZLIB is used as the compression backend.
- The replay file version is bumped to 2.
- An `sv6r` file still starts with a magic number and a version.
- If version = 1, the file stream is consumed by the ReplayRecordData
serializer.
- If version > 1, the file stream is decompressed and the resulting
stream is consumed by the ReplayRecordData serializer.
- Introduced `Compatible` that indicates whether a file with a version
mismatch is compatible. E.g.: v1 is compatible with this `ReplayManager`
2019-02-06 10:12:21 +01:00
Duncan
57471edc47
Merge pull request #8672 from Xkeeper0/i/8662
...
Fix for #8662 paint_haunted_house_structure crash
2019-02-06 07:46:57 +00:00
duncanspumpkin
752df2607a
Increment network version
2019-02-05 20:39:53 +00:00
duncanspumpkin
8a69b89df6
Move Staff Set Orders into game action framework.
...
Split up costume and order game commands
2019-02-05 20:38:18 +00:00
Duncan
c436a656ad
Merge pull request #8666 from cgdolan/develop
...
Implement game action for sign set style
2019-02-05 20:35:11 +00:00
duncanspumpkin
50b241d20d
Add missing include and rework to use Coords
2019-02-05 19:27:30 +00:00
Xkeeper
2828cbb2fc
Fix crash in FerrisWheel paint
...
[OpenRCT2/OpenRCT2#8662 ]
2019-02-05 11:14:17 -08:00
Xkeeper
a22260b56a
Fix crash in MapAnimation re: small scenery
...
[OpenRCT2/OpenRCT2#8662 ]
2019-02-05 11:02:22 -08:00
Xkeeper
2bb8813c41
Fix crash in paint_haunted_house_structure
...
[OpenRCT2/OpenRCT2#8662 ]
2019-02-05 11:01:23 -08:00
Michał Janiszewski
4192ffe57e
Improve cmake for MSVC ( #8581 )
...
* Improve cmake for MSVC
* Fix mingw builds
2019-02-05 16:12:58 +01:00
Christopher G. Dolan
19a58fa5fe
Fix format, move validation logic to query, update network version
2019-02-04 17:30:45 -08: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
Christopher G. Dolan
a8864092c0
fix format and serialize all ivars
2019-02-03 23:02:00 -08:00
Christopher G. Dolan
075983da0f
Implement game action for sign set style
2019-02-03 22:20:01 -08:00
Michał Janiszewski
6bdbe248fd
Merge pull request #8641 from tomlankhorst/use-lto
...
Detect availability of LTO, apply when available
2019-02-04 00:06:37 +01:00
Tom Lankhorst
ce6e08c633
Introduce SET_CHECK_CXX_FLAGS
2019-02-03 23:32:51 +01:00
Tom Lankhorst
521948139c
Chat toggle button ( #8648 )
...
* Add chat_available()
* Add appropriate strings
* Add new Chat icon
* Implement Chat button
* CS
* Fix chat icon
* Make chat icon a bit smaller and less bright
* Update chat icon
* Update changelog
2019-02-03 23:30:34 +01:00
Michał Janiszewski
604da7ce01
Merge pull request #8661 from tomlankhorst/refactor-random
...
Refactor random engine
2019-02-03 23:29:10 +01:00
Tom Lankhorst
045692993a
Make template params adhere to code style
2019-02-03 21:16:09 +01:00
Tom Lankhorst
422d5f2ef1
Replace '_N' by '_num'
2019-02-01 21:54:00 +01:00
Tom Lankhorst
d660c9d45f
Merge branch 'refactor-random' of github.com:tomlankhorst/OpenRCT2 into refactor-random
2019-02-01 21:51:28 +01:00
Tom Lankhorst
1e65db371b
Use single underscore prefix for template parameters
2019-02-01 21:51:01 +01:00
Tom Lankhorst
ec8caa5636
Drop <sstream>
2019-02-01 21:47:47 +01:00
Tom Lankhorst
dfe7f0614c
Consistency
2019-02-01 21:00:19 +01:00
Tom Lankhorst
16691b22ba
Use state struct
2019-02-01 19:29:43 +01:00
Tom Lankhorst
2ea347f15f
MSVC SFINAE compatibility
2019-02-01 15:50:09 +01:00
Tom Lankhorst
1a81d60609
Expose gScenarioRand, add <algorithm>
2019-02-01 14:48:45 +01:00
Tom Lankhorst
6a42a95495
Refactor random engine
...
Introduce RotateEngine and Rct2Engine, FixedSeedSequence and Rct2Seed.
Adhere respectively to requirements `RandomNumberEngine` and `SeedSequence`.
Can be used with C++11 adaptors and distributions in <random>.
2019-02-01 14:32:04 +01:00
Michał Janiszewski
57897d4cb5
Attach screenshot to backtrace.io report
2019-01-31 23:36:41 +01:00
Michał Janiszewski
7655ba7746
Make screenshot return path to file
2019-01-31 23:36:41 +01:00
Matt
0237eaf498
Refactor number values to SPRITE_INDEX_NULL
2019-01-30 15:02:52 +01:00
Matt
7ad59bbb37
Refactor number values to RIDE_VALUE_UNDEFINED
2019-01-30 14:59:06 +01:00
ζeh Matt
6668a1fa86
Refactor remaining number values to RideStation::NO_TRAIN ( #8655 )
2019-01-30 13:49:46 +00:00
Matt
4026ead774
Fix #8653 : crash when peeps attempt to enter a ride with no vehicles.
2019-01-30 13:16:45 +01:00
ζeh Matt
3aad9a4b2e
Refactor footpath_update_path_wide_flags
2019-01-29 19:07:00 +01:00
Tom Lankhorst
3ab73018ec
Quiet CMake find package 'benchmark' ( #8628 )
...
`benchmark` is an optional package. CMake can be quiet about not finding it.
2019-01-28 21:44:50 +01:00
Tom Lankhorst
0233795add
Fix #8642 : Likely mistake in entrance fee check
2019-01-28 11:15:49 +01:00
Tom Lankhorst
4c015edaf6
Templatise `rorN` and `rolN` with `N` in {8, 16, 32, 64}
2019-01-28 10:55:24 +01:00
Tom Lankhorst
06600440fe
Enable LTO/IPO on Clang and GCC
2019-01-27 12:58:19 +01:00
Michael Steenbeek
3d9702dfd4
Fix #8141 : Attempting to build entrance/exit on station 2 does not work
2019-01-27 10:38:47 +01:00
Michael Steenbeek
3b176cd6eb
Fix #8585 : Part of track missing on air powered vertical coaster ( #8635 )
2019-01-25 22:09:12 +01:00
Gymnasiast
66c571370e
Fix #8572 : Steel Twister track pieces ID 64 and 65 drawn incorrectly
2019-01-24 20:25:01 +01:00
Tom Lankhorst
01a52d236c
Use vector<string> in InteractiveConsole
...
Issue #8597 shows Valgrind result indicating a memory leak in
InteractiveConsole. This is fixed in #8619 by ensuring that free() is
called appropriately.
This commit takes that a step further by removing all manual memory
management in favour of using vector<string>.
- argc is now gone in favour of argv.empty()/argv.size()
- argv_t is a vector of strings of utf8's
- console_command_func's signature is changed accordingly
2019-01-24 16:12:49 +01:00
Michael Steenbeek
247e89eb53
Revert duck fix
2019-01-24 10:40:04 +01:00
Michał Janiszewski
cba2dd96ec
Allow specyfing more than one input file for sprite sort benchmark
2019-01-22 19:54:12 +01:00
Michał Janiszewski
b38e600b15
Update sprite sort benchmark to accept filename
2019-01-22 19:45:56 +01:00
Michał Janiszewski
304840069d
Add sprite sorting benchmark
2019-01-22 19:45:56 +01:00
Michał Janiszewski
f2233d3cc3
Update MSVC project to use Google benchmark
2019-01-22 19:45:56 +01:00
Tom Lankhorst
55af6ad0e1
Free allocated memory when 'argc' == 0 ( #8619 )
...
Fixes leak in #8597 , InteractiveConsole allocates memory for arguments,
but frees it only if the argument count is greater than zero.
2019-01-21 23:03:12 +00:00
Michael Steenbeek
4e9d2ce764
Split footpath object into two internally
2019-01-20 21:38:38 +01:00
Gymnasiast
cd8227c756
Clean up magic numbers in footpath corner drawing
2019-01-20 17:54:30 +01:00
Gymnasiast
d000457fb5
Rename more occurrences to railingEntry
2019-01-20 17:23:27 +01:00
Gymnasiast
ad2698df0d
Move 'should draw path over supports' to tile element
2019-01-20 17:23:27 +01:00
Gymnasiast
1f6d4caf7c
Rename some variables
2019-01-20 17:23:27 +01:00
Gymnasiast
2f0b6a9652
Rename FOOTPATH_ENTRY_FLAG_HAS_PATH_BASE_SPRITE
2019-01-20 17:23:27 +01:00
Gymnasiast
73e25399d3
Rename footpathEntry to railingEntry where appropriate
2019-01-20 17:23:27 +01:00
Gymnasiast
9da5b5d513
Rename path_paint_{box,pole}_support parameter
2019-01-20 17:23:27 +01:00
deurklink
5e39147b76
Fix #8584 : Ducks spawning function doesnt check tiles 0..63 (original bug) ( #8614 )
2019-01-20 13:20:01 +01:00
Lars Toenning
7de115263e
Fix #8377 : Change number of autosaves that are stored ( #8440 )
2019-01-19 14:31:12 +01:00
Michael Steenbeek
6ef01b3cd3
Name some path drawing variables
2019-01-18 20:35:43 +01:00
Michael Steenbeek
b4bef2fe7d
Merge pull request #8560 from richard-fine/directions
...
Begin cleanup of direction handling
2019-01-18 19:09:39 +01:00
Ted John
92412d4bab
Store ride index inside ride struct
2019-01-18 11:46:18 +01:00
Michał Janiszewski
6043f583b0
Add missing nullptr check in rct_peep::UpdateRideMazePathfinding
...
Fixes https://www.nedesigns.com/park/3359/h2h7-r4-diamondheights/
2019-01-17 23:40:18 +01:00
ζeh Matt
a34422dc26
Fix #8591 : Game loop does not run at a consistent tick rate of 40 Hz ( #8594 )
...
* Fix #8591 : Run game loop at consistent tick rate of 40hz.
* Update distribution/changelog.txt
Co-Authored-By: ZehMatt <m.moninger.h@gmail.com>
2019-01-17 23:22:27 +01:00
deurklink
51fc2fe84a
Feature #8583 : Add booster pieces for water coaster
...
Co-Authored-By: deurklink
2019-01-14 22:17:52 +01:00
Michał Janiszewski
b27428835c
Change http://backtrace.io token
...
Someone seems to be trying to use up all our backtrace.io quota by
submitting the same bug over and over again which was fixed in
https://github.com/OpenRCT2/OpenRCT2/pull/8533 , 17 days ago now.
To prevent such behaviour, I've disabled the old token and replaced it
with a new one, causing dumps from old builds to be rejected now and not
counting towards our quota.
2019-01-14 21:18:33 +01:00
Gymnasiast
87f894079b
Replace hardcoded occurrences of RIDE_ENTRY_INDEX_NULL
2019-01-12 12:48:35 +01:00
Gymnasiast
74a3674e86
Replace more hardcoded instances of RIDE_ID_NULL
2019-01-12 12:38:23 +01:00
Ted John
8701286772
Use new ride_id_t typedef ( #8561 )
2019-01-12 10:11:55 +00:00
Michael Steenbeek
fdba61002f
Add station index to Tile Inspector
2019-01-08 11:25:12 +01:00
Michał Janiszewski
0d2fd33fd8
Bump network version
...
Co-Authored-By: ZehMatt <m.moninger.h@gmail.com>
2019-01-07 09:04:51 +01:00
Matt
9f613833ce
Rename actions.
2019-01-07 09:04:51 +01:00
IntelOrca
b9fd90ffd3
Implement ClearAction.
2019-01-07 09:04:51 +01:00
Matt
d7096f71cb
Implement SceneryRemoveLargeAction.
2019-01-07 09:04:51 +01:00
Matt
b34b09c6bb
Implement SceneryRemoveSmallAction.
2019-01-07 09:04:51 +01:00
Richard Fine
3b9dd87caf
Make direction_reverse constexpr and pass arg by value
...
To make totally sure that the compiler understands it can fully compute the value at compile time when dealing with constant inputs, and to make totally sure there are no aliasing problems.
2019-01-06 11:58:28 +00:00
Ted John
0328355f9e
Include stdexcept instead of exception ( #8559 )
2019-01-05 22:12:47 +01:00
Richard Fine
b77f1285a4
Reformat
2019-01-05 19:48:12 +00:00
Richard Fine
e90e9dd73f
Introduce many uses of direction_reverse
...
Change many of the places doing the ^2 trick to use direction_reverse instead, for improved readability.
2019-01-05 15:41:46 +00:00
Richard Fine
fd60654238
Add comments and direction_reverse function
...
Add a bit of Javadocs, and introduce helper function for reversing directions because the ^2 trick used elsewhere in the codebase is not immediately obvious exactly what it does.
2019-01-05 14:28:24 +00:00
Richard Fine
613c7e9bf3
Introduce 'Direction' typedef
...
Directions are used quite widely across the codebase, but right now we just use uint8_t for them. Defining a proper type makes the intention clearer.
2019-01-05 13:58:32 +00:00
Hielke Morsink
53ae48ffca
Merge pull request #8550 from janisozaur/fallthroughs
...
Fix implicit fallthroughs
2019-01-04 23:27:02 +01:00
Hielke Morsink
5ef5e4153d
Fix some more implicit and conditional fallthroughs
2019-01-04 22:26:56 +01:00
Michał Janiszewski
8a70b29f64
Fix GCC's warning regarding enum vs non-enum values being compared ( #8551 )
2019-01-04 21:29:44 +01:00
Michał Janiszewski
7e769ed662
Fix #7536 : Android build fails to start ( #8554 )
...
This was a regression from #7435 which introduced threads and caused JNI
to misbehave and fail to load our expected classes. Provide a workaround
based on the description in https://stackoverflow.com/a/16302771 which
stores a main thread's class loader and uses that in neighbouring
threads.
2019-01-04 19:48:26 +01:00
ζeh Matt
20496b0390
Merge pull request #8545 from richard-fine/use-enum-types
...
Use of enum types in Peep code
2019-01-04 10:57:56 +01:00
ζeh Matt
069052c685
Fix replays not working in some cases. ( #8552 )
2019-01-04 10:45:21 +01:00
Richard Fine
a30e154388
Handle all enum values in switches
...
Add 'default' cases to a few enums that were not otherwise handling all possible enum values. This wasn't a problem before because the variables we were switching on were not actually enum types, but now that they are, Clang is warning us about the non-covered cases.
2019-01-03 12:06:47 +00:00
Michael Steenbeek
31298bd772
Merge pull request #8543 from IntelOrca/refactor-ride
...
Refactor ride structure
2019-01-02 22:38:20 +01:00
Michał Janiszewski
c5e1abcfb1
Fix implicit fallthroughs
2019-01-02 22:30:57 +01:00
Michał Janiszewski
b7d1d49956
Merge pull request #8548 from janisozaur/memleak-20190102
...
Plug memory leaks
2019-01-02 21:23:09 +01:00
Ted John
d979511628
Do code review suggestions
2019-01-02 19:46:13 +00:00
Gymnasiast
7c8144b57d
Fix codepoint of interpunct
2019-01-02 20:04:42 +01:00
Michał Janiszewski
ca3d9cea91
Add missing free() call in config_release()
2019-01-02 20:02:14 +01:00
Michał Janiszewski
635e46af83
Plug memory leak in ObjectFactory::CreateObjectFromZipFile
2019-01-02 19:57:41 +01:00
Michael Steenbeek
b5317ee9e9
Split drawing of path and railing
2019-01-02 19:52:53 +01:00
Richard Fine
3089781883
Reformat
2019-01-02 14:40:17 +00:00
Richard Fine
b845304656
Equality operators for TileCoordsXYZ
...
Introduce operator == and operator != for TileCoordsXYZ, so that we can more easily operate on them in tests.
2019-01-02 14:11:28 +00:00
Richard Fine
60396c6658
Rename enums to modern style
...
Change various PEEP_ENUM_TYPE names to PeepEnumType names, to match the more modern coding standard.
2019-01-02 14:10:05 +00:00
ζeh Matt
a065806b20
Merge pull request #8374 from ZehMatt/replay-feature
...
Add support to record and replay game commands/actions.
2019-01-02 09:15:10 +01:00
Matt
7955dba9ba
Add warning for mismatching network version.
2019-01-02 06:58:36 +01:00
Matt
fc4e45562d
Use stringstream to log integral values.
2019-01-02 06:39:59 +01:00
Matt
74668c6188
Use correct file path on replay info output.
2019-01-02 05:39:32 +01:00
Matt
8615690891
Fix timestamp not being stored.
2019-01-02 05:36:31 +01:00
Matt
6aee1cba28
Remove deprecated function std::asctime.
2019-01-02 05:35:57 +01:00
Matt
1f20fdf65b
Log more replay information to console.
2019-01-02 05:20:10 +01:00
Matt
a8254aa292
Add 64 bit serialisation support.
2019-01-02 05:18:36 +01:00
Matt
fafd2081e3
Result NewsItem when adding to queue.
2019-01-02 05:03:42 +01:00
Richard Fine
88beb4ee6a
Define PEEP_ACTION_SPRITE_TYPE_WATCH_RIDE
...
Previously untitled "PEEP_ACTION_SPRITE_TYPE_2" is a single-frame animation that guests play when they are standing still and watching a ride.
2019-01-01 23:17:45 +00:00
Richard Fine
a5e896f0c3
Use PEEP_ACTION_SPRITE_TYPE in the peep drawing code
2019-01-01 23:07:13 +00:00
Richard Fine
73686e84d6
Define PEEP_ACTION_SPRITE_TYPE_SITTING_IDLE
...
Previously untitled 'PEEP_ACTION_SPRITE_TYPE7' is actually a single-frame animation for sitting on benches, from looking at the sprite. Makes sense with the way the value is used in the code too.
2019-01-01 23:06:57 +00:00
Richard Fine
f3292194f5
Use PEEP_SPRITE_TYPE enum
...
Use the PEEP_SPRITE_TYPE enum for rct_peep::sprite_type so we get type safety on it.
2019-01-01 22:40:59 +00:00
Richard Fine
88850cdab2
Use PEEP_ACTION_SPRITE_TYPE enum
...
Use the PEEP_ACTION_SPRITE_TYPE enum for rct_peep::action_sprite_type and ::next_action_sprite_type, as well as other code that deals with action sprite types.
2019-01-01 22:29:26 +00:00
Richard Fine
38cec94d9d
Use PEEP_THOUGHT_TYPE enum
...
Use PEEP_THOUGHT_TYPE for rct_peep_thought::type field, as well as functions that deal with selecting thoughts to add.
2019-01-01 22:18:49 +00:00
Richard Fine
b716fd071d
Use PEEP_TYPE enum for rct_peep::type field
...
Use the PEEP_TYPE enum for rct_peep::type so that the compiler/debugger understand what values it should contain.
2019-01-01 22:11:02 +00:00
Richard Fine
e1016bf71e
Use PEEP_ACTION_EVENTS enum for rct_peep::action field
...
Use the PEEP_ACTION_EVENTS enum for the rct_peep::action field explicitly, so that we get type safety on it from the compiler and debugger. In the process, force PEEP_ACTION_EVENTS to be of size uint8_t, and use named constants for NONE actions instead of magic numbers in a few places.
2019-01-01 22:06:02 +00:00
Ted John
38f632074b
Merge ride track colour arrays into one
2019-01-01 21:25:34 +00:00
Richard Fine
88b86eb0c1
Use PEEP_STATE enum type directly
...
Explicitly declare the PEEP_STATE enum as being uint8_t width, then use it instead of uint8_t in the rct_peep struct. This has a few benefits:
* It makes it clearer which values we expect to be assigned to that variable. If you hadn't already seen PEEP_STATE existed, it wouldn't be obvious.
* It lets the compiler catch assignment of non-PEEP_STATE values for us
* It lets the debugger show us symbolic constants when looking at a peep, instead of raw values.
The only downside is that we no longer see directly in the rct_peep struct that the field is 1 byte wide, but I think that the benefits outweigh the costs in this case...
2019-01-01 20:49:17 +00:00
Ted John
37f76d1687
Move station fields into new station struct
2019-01-01 02:26:14 +00:00
Ted John
8e6497fc1d
Merge vehicle_colours and vehicle_colours_extended
2018-12-31 19:25:07 +00:00
Ted John
153ab15428
Fix #8493 : Remove_unused_scenery removes map data
...
Do not try to remove (unused) terrain surfaces, edges and stations.
2018-12-30 23:40:22 +00:00
Matt
8721bef807
Fix TileElementWantsFootpathConnection test not releasing context.
2018-12-30 12:24:41 +01:00
Matt
38dc762f62
Initialize gCommandPosition with LOCATION_NULL in case its not set.
2018-12-30 00:04:34 +01:00
Matt
19ffc6208f
Add version to replay file.
2018-12-30 00:03:20 +01:00
Matt
c7ab757a86
Cleanup.
2018-12-29 23:06:15 +01:00
Matt
0ba42d6899
Fix TileElementWantsFootpathConnection test not releasing context.
2018-12-29 22:58:33 +01:00
Matt
b0ca9ff7c5
Prevent replay manager from recording nested commands.
2018-12-29 19:23:28 +01:00
Matt
bf03de4755
Focus camera on last replay event.
2018-12-29 19:23:28 +01:00
Matt
d3a20df682
Fix track designs ignoring ghost/preview flags.
2018-12-29 19:23:28 +01:00
Matt
14695e9b41
Fix game actions with ghost flags being recorded to replays.
2018-12-29 19:23:28 +01:00
Matt
d1ee19efd4
Fix track design previews not passing flags down.
2018-12-29 19:23:28 +01:00
Matt
5a8b611b83
Update.
2018-12-29 19:23:28 +01:00
Matt
5cfc06573e
Ignore replay test when network is disabled.
2018-12-29 19:23:27 +01:00
Matt
ccc3227113
Cleanup.
2018-12-29 19:23:27 +01:00
Matt
040522b708
Fix include.
2018-12-29 19:23:27 +01:00
Matt
017f190a52
Add basic regression tests via the replay system.
2018-12-29 19:23:27 +01:00
Matt
7fa9ce3054
Store state important park parameters in the replay.
2018-12-29 19:23:27 +01:00
Matt
df0cc72887
Add normalisation support to remove gaps.
2018-12-29 19:23:27 +01:00
Matt
b6c2dca849
Adjust replay notification position.
2018-12-29 19:23:27 +01:00
Matt
f6dbf5f1a2
Add std::array serialiser support.
2018-12-29 19:23:27 +01:00
Matt
6e2514cd0d
Refactor sprite_checksum, returns rct_sprite_checksum now.
2018-12-29 19:23:27 +01:00
Matt
bf8108c2d6
Lock game actions and commands to replay commands if replay is active.
2018-12-29 19:23:27 +01:00
Matt
6e8216d7c7
Add GAME_COMMAND_FLAG_REPLAY
2018-12-29 19:23:27 +01:00
Matt
624427259b
Draw text notice if replay system is active.
2018-12-29 19:23:27 +01:00