Commit Graph

16126 Commits

Author SHA1 Message Date
Gymnasiast 19d113ae86
Reduce code duplication 2021-01-15 17:34:47 +01:00
Gymnasiast 4fcc86f990
Fix #13236: New ride type appears as new vehicle type in research 2021-01-15 17:21:29 +01:00
Michael Steenbeek 5cd3014334
Import SV6 tile elements by x/y 2021-01-15 16:23:28 +01:00
Michał Janiszewski f1a5e62440
Fix #13816: Compilation failure on Launchpad (#13837) 2021-01-14 23:19:10 +01:00
ζeh Matt 78f6e3e8e3
Fix replays not failing when last tick is the cause (#13834)
* Fix replays never failing

* Change replay dependency meta

* Stop replay when state mismatches
2021-01-14 13:48:12 +00:00
Matt e9cdb559e3
Avoid some allocations by using a fixed size vector 2021-01-14 12:27:54 +02:00
ζeh Matt f1ea718ded
Fix #13832: Game action position is invalid on opening/closing a ride 2021-01-14 10:13:32 +01:00
LRFLEW 601fa5629b
Fix Window IDX enum names 2021-01-13 23:00:35 +01:00
Duncan 0c91ed9bdd
Fix #13755. Regression causing entity position corruption (#13828)
When switching from variable frame to fixed frame the entity positions could become corrupted. This would cause to end up being stuck inside of tiles that they could not path out of. When switching from normal speed to hyperspeed the rendering switches from variable to fixed frame. Therefore entitys could end up corrupted when enabling hyperspeed. Due to the way the corruption occured a hang or crash could also occur.
2021-01-13 17:29:30 +00:00
Michael Steenbeek bf63a562ae
Fix #11438: Crash when decreasing map size 2021-01-12 22:04:22 +01:00
Michael Steenbeek 93b7b86ad4
Merge pull request #13756 from IntelOrca/refactor/guest-list-window
Refactor guest list window to a class
2021-01-12 20:01:47 +01:00
Michael Steenbeek 830d2426bd
Import RCT1 tile elements by x/y (#13740)
* Import RCT1 tile elements by x/y

* Clean up wall import

* Move tile pointers creation to a separate function and to heap

* Create class for tile pointer index
2021-01-12 17:53:58 +00:00
Ted John 1723161503 Optimise guest list sort
Format all guest names in advance and store them in a list for sorting. This reduces the number of calls to format_string considerably.
2021-01-11 22:41:42 +00:00
Ted John 3e75f23970 Refactor guest list window to a class 2021-01-11 21:56:48 +00:00
skdltmxn 7ef4d7762f
Refactor to avoid unnecessary copies (#13736)
* Refactor to avoid unnecessary copies

* Fix dangling references
2021-01-11 18:14:15 -03:00
Ted John b58038a23f
Fix #13758: Cheat menu's No Money Error 2021-01-11 20:39:58 +01:00
ζeh Matt cb5b1fb9ef
Eliminate copying of paint_struct, initialize data in-place 2021-01-11 19:37:39 +01:00
Matthias Mailänder 818b2a5239
Find the system wide installed Discord RPC library. (#13658) 2021-01-11 00:02:22 +01:00
Michael Steenbeek 60d1e94046
Close #7059: Implement landscape doors on Ghost Train (#13636)
* Implement landscape door updating

* Implement door drawing for Ghost Train

* Amend changelog and bump network version

* Apply review requests

* Always return default seat rotation for ride types with landscape doors

* Fix comment

* Update replays

Co-authored-by: duncanspumpkin <duncans_pumpkin@hotmail.co.uk>
2021-01-10 21:38:02 +00:00
Mathias Gibbens b1e5a11bf3
Several more spelling fixes (#13752)
Signed-off-by: Mathias Gibbens <mathias@calenhad.com>

Co-authored-by: Mathias Gibbens <mathias@calenhad.com>
2021-01-10 18:23:35 +00:00
Duncan d5ada2dca1
Remove type from SpriteBase (#13735)
* Move type field into sub structures

* Use type for misc_type

* Use type for l_type

* Rename to SubType

* Rename SpriteGeneric to MiscEntity

* Rename generic to misc

* Add extra nullptr checks for compilers that cant understand

* Make review changes

* Increment network version

* Update replays
2021-01-10 15:14:34 +00:00
Michał Janiszewski d55bff7587
Merge pull request #10700 from janisozaur/benchsimulate
Add benchsimulate command
2021-01-10 14:17:20 +01:00
Michael Steenbeek 1da6ae6b51
Merge pull request #13710 from skdltmxn/refactor/string_view
Refactor/string view
2021-01-10 13:37:01 +01:00
ζeh Matt 011588b01e
Move window update out of variable frame updates (#13704) 2021-01-10 09:36:34 -03:00
Michał Janiszewski deebd779a9 Address review comments for benchsimulate 2021-01-10 13:34:14 +01:00
Michał Janiszewski a8c3ca72ed Update to new style casts 2021-01-10 13:34:14 +01:00
Michał Janiszewski 6a6e58c088 Update vcxproj 2021-01-10 13:34:14 +01:00
Michał Janiszewski 0410b37369 Provide more detailed stats about simulation performance 2021-01-10 13:34:14 +01:00
Michał Janiszewski a614c1ec05 Add benchsimulate command
Adds a new command, `benchsimulate`, that starts benchmarking
UpdateLogic() function.
2021-01-10 13:34:14 +01:00
Tulio Leao a2de9cfc70
Merge pull request #12573 from NathanIkola/Fix12334
Refactor footpath_is_connected_to_map_edge
2021-01-10 09:22:08 -03:00
Ted John d907c58a13
Start window refactor framework 2021-01-10 12:41:55 +01:00
Mathias Gibbens d26590c38e
Fix cmake compile_definitions edge case (#13732)
If cmake variables contain just empty strings, don't add them to
the compile definitions, as this can result in incorrect version
strings in the compiled program

Signed-off-by: Mathias Gibbens <mathias@calenhad.com>

Co-authored-by: Mathias Gibbens <mathias@calenhad.com>
2021-01-08 22:08:30 +01:00
skdltmxn b0a8ebc808
Refactor to use push_back more efficient (#13726) 2021-01-08 20:59:55 +00:00
Mathias Gibbens 115c92996b
Fix spelling typos (#13730) 2021-01-08 20:13:00 +01:00
Berbe d49f5576a0
Fix: CMake project (#13163) 2021-01-08 19:23:51 +01:00
Michael Steenbeek a95033e55f
Remove unused function (#13724) 2021-01-08 00:49:40 +01:00
Basssiiie 1abb81ef81
Re-add 'edgesAndCorners' support for footpaths (#13720) 2021-01-07 19:15:23 +00:00
ζeh Matt a6080b7996
Refactor code to dynamically add and remove viewports (#13687) 2021-01-07 19:06:49 +00:00
Michael Steenbeek 8a4e44be5e
Add missing ride types to JSON object loader 2021-01-06 22:30:55 +01:00
ζeh Matt acf71315b5
Cleanup variables usage and initialize them 2021-01-06 22:29:40 +01:00
Gymnasiast cd270df349
Bump network version 2021-01-06 21:25:49 +01:00
X123M3-256 deca5a3881
Add "Single Rail Roller Coaster" ride type 2021-01-06 21:10:15 +01:00
skdltmxn e1cfa8693f Use c_str() instead of data() 2021-01-07 04:28:19 +09:00
Michael Steenbeek 764ab7f113
Rename dword_F64EB0 to marker 2021-01-06 19:53:16 +01:00
skdltmxn c093a50f3f Refactor to use string_view more properly 2021-01-07 01:52:10 +09:00
ζeh Matt e6d1fcce5d
Merge pull request #13698 from ZehMatt/perf/tweening
Improve performance of tweening entities between ticks
2021-01-05 19:47:24 +02:00
ζeh Matt 12c6854a3e
Fix #13701: Use correct max zoom level for peeps on invalidation 2021-01-05 18:24:52 +01:00
Matt f77076def6
Apply review suggestions 2021-01-05 19:19:02 +02:00
Matt 876b55727e
Correctly remove entities from tweening list when object is removed 2021-01-05 01:35:18 +02:00
Matt b1561001b7
Apply review suggestions 2021-01-05 01:18:25 +02:00
Matt 9c88cc7589
Collapse function template in PaintSessionArrange 2021-01-05 01:02:06 +02:00
Matt c442ef6207
Improve performance of tweening entities between ticks 2021-01-05 00:26:58 +02:00
skdltmxn 81e7e29eb5
Refactor vehicle_paint to move rideEntry to the inner scope (#13695) 2021-01-04 17:43:22 +00:00
Michael Steenbeek b21f8284ac
Merge pull request #13669 from ZehMatt/enhancements/banner-limit
Refactor logic to allow to draw 256 banners at the same time
2021-01-03 23:02:31 +01:00
Michael Steenbeek 406967c71f
Refactor object_entry_get_entry() to return Object 2021-01-03 23:01:52 +01:00
ζeh Matt 30aea2bb2a
Merge pull request #13667 from ZehMatt/refactor/invalidation
Simplify object invalidation automatically when possible
2021-01-03 20:10:15 +02:00
Michael Steenbeek a27ec2deb3
Merge pull request #13172 from keithstellyes/gog-extractor-posix
Part of #12307: GOG installer extraction for POSIX
2021-01-03 19:00:29 +01:00
Sadret d22c2edee5
Implement #13384: Expose all TileElement data to plugin API 2021-01-03 18:42:21 +01:00
Gymnasiast 52bc650abf
Improve feedback when selecting the wrong file 2021-01-03 18:40:02 +01:00
Gymnasiast 07c3a930e4
Apply review requests 2021-01-03 17:53:38 +01:00
Gymnasiast 09c6339bd4
Stub Execute() for Win32 2021-01-03 17:53:15 +01:00
Gymnasiast 9058f00bfa
Strictly use int32_t for ShowMenuDialog 2021-01-03 17:53:14 +01:00
Gymnasiast 72cc8df395
Stub FindApp on Windows 2021-01-03 17:53:14 +01:00
Keith Stellyes 268e39d12a
GOG installer extraction for POSIX 2021-01-03 17:53:14 +01:00
Ted John 6fb7921dbd
[Plugin] Add context.setInterval and context.setTimeout 2021-01-03 16:08:35 +01:00
amdoku 85efe047bb
Close #12444: Refactor TILE_INSPECTOR_PAGE to use strong enum (#13134) 2021-01-03 10:30:59 -03:00
Michael Steenbeek 44d595835a
Fix #13653: Incorrect colours in Inventions List 2021-01-03 14:06:52 +01:00
Karthik NS ae637bf088
Close #13623: Refactor LightFXQualifier to use strong enum 2021-01-03 14:03:13 +01:00
Matt 7d4637613a
Format the integers into temporary buffer to fix inline sprites 2021-01-02 16:46:05 +02:00
Matt c2fd7708ad
Use char_traits for length 2021-01-02 16:46:05 +02:00
Matt 2ef4dd23aa
Replace std::stringstream with custom string buffer 2021-01-02 16:46:05 +02:00
Matt 5bbc07847c
Remove unused field 2021-01-02 16:43:17 +02:00
Matt 474ed67696
Initialize scrolling text sprites without a copy from original 2021-01-02 16:43:17 +02:00
Matt 95551b0504
Use correct type 2021-01-02 16:43:17 +02:00
Matt 7dfe0b02a6
Add ScrollingText.h 2021-01-02 16:43:17 +02:00
Matt 9d473bbfbe
Refactor logic to allow to draw 256 banners at the same time 2021-01-02 16:43:17 +02:00
Matt 19b63a1825
Refactor logic of MoveTo to always imply invalidation 2021-01-02 16:22:28 +02:00
Matt efa1db826e
Refactor invalidation logic to be generic to the callee 2021-01-02 16:22:28 +02:00
ζeh Matt 5ae54eb9f9
Merge pull request #13666 from ZehMatt/refactor/miscsprite-enum
Refactor MISC_SPRITE to strong enum
2021-01-02 16:12:09 +02:00
Michael Steenbeek ac6cc9d63e
Fix #13609: Crash in LargeSceneryRemoveAction.cpp (#13663) 2021-01-02 15:06:51 +01:00
Matt cb719a6e10
Add missing case statements for entity scripting 2021-01-02 15:31:26 +02:00
Matt 5f2945d238
Refactor MISC_SPRITE to strong enum 2021-01-02 15:30:44 +02:00
Michael Steenbeek 1b686816db
Move tile element banner functions to methods 2021-01-02 11:28:39 +01:00
Ted John b0e57c0ca9
Do not allocate vector each time format string legacy is called 2021-01-02 11:27:50 +01:00
Michael Steenbeek ad52abf39a
Revert "Avoid unnecessary calculations when the passed DPI is the active DPI" (#13672) 2021-01-01 13:29:10 +01:00
Matt 114be0e62b
Avoid unnecessary calculations when the passed DPI is the active DPI 2021-01-01 00:13:48 +02:00
Michael Steenbeek ac2057775e
Change standard palette colours for indices 1-9 2020-12-30 20:07:14 +01:00
Dennis Devriendt 3073cca6aa
Close #13624: Refactor ViewportInteractionItem to use strong enum (#13657)
* Closes #13624: Refactor ViewportInteractionItem to use strong enum
2020-12-29 15:09:15 -03:00
Bas 918bd015b5 Increment plugin version, update changelog 2020-12-29 15:49:26 +01:00
Bas 7848a39e6c Rename car 'move' method to 'travelBy' 2020-12-29 15:41:27 +01:00
Bas 75f0f21512 Use collision disable flag instead of update car position flag check 2020-12-29 15:41:27 +01:00
Bas 7d819c0714 Remove unnecessary Invalidates from plugin car.move() method 2020-12-29 15:41:26 +01:00
Bas 2b2efee7a8 Remove unnecessary MoveTo code from MoveRelativeDistance 2020-12-29 15:41:26 +01:00
Bas 559c327c1e Disable vehicle collision on single car position update 2020-12-29 15:41:26 +01:00
Bas e44c17957b Replace track position setter with new move method 2020-12-29 15:41:26 +01:00
Bas 32bccf4a7c Run clang-format on ScEntity.hpp 2020-12-29 15:41:25 +01:00
Bas d5a9881f91 Add track progress property to vehicles 2020-12-29 15:41:25 +01:00
Michael Steenbeek ac65864b40
Close #11859: Add on-ride photo to APVC and Reverse Freefall RC 2020-12-29 13:13:17 +01:00
csunday95 51faec5c50
Close #13637: Refactor sprite compiler for filesystem efficiency
- sprite building would save a file with just the sprite file header
   and then immediately open it again at the beginning of compilation
 - sprite file generation is now entirely in memory until the final
   output file is saved on success
 - added validation of no file activity in the failed build test case;
   failed builds will not generate a file or edit an existing one
2020-12-29 13:12:55 +01:00
Duncan 556c786b12
Paint Setup refactor (#13633)
* Simplify paint session generate

* Add template to improve performance

* Add comments and fix minor issues
2020-12-25 08:05:57 +00:00
Michael Steenbeek 7337e9d4a3
Fix #13644, #13102: Underflows in ride graph, temperature, cut-away view 2020-12-24 23:08:01 +01:00
Tulio Leao 7b2ea2aae1
Merge pull request #13632 from tupaschoal/some-enum-class
Some enum class conversions
2020-12-24 08:08:51 -03:00
Tulio Leao 8c9fa45a76 Use switch for Ride::UpdateAll 2020-12-23 20:15:39 -03:00
Tulio Leao af0ec60bed Close #13626: Refactor RCT2LanguageId to strong enum 2020-12-23 20:07:54 -03:00
Tulio Leao 00483df2f2 Close #13625: Refactor TOOL_IDX to use strong enum 2020-12-23 20:07:54 -03:00
Tulio Leao d6ebdded6b Close #13630: Refactor DATATYPE into strong enum 2020-12-23 20:07:53 -03:00
Tulio Leao b7f70ab20b Close #13628: Refactor MASTER_SERVER_STATUS to strong enum 2020-12-23 20:07:53 -03:00
Tulio Leao 221aa8cece Close #12453: Refactor RCT2_EDITOR_STEP to strong enum 2020-12-23 20:07:53 -03:00
Michael Steenbeek f9e90ed84c
Fix #13641: Game crashes after a while (#13642) 2020-12-23 22:37:43 +01:00
Tulio Leao 45cc84cfaf Remove unreachable default in list_item_sort 2020-12-23 18:02:39 -03:00
Tulio Leao f7c6e04658 Close #13622: Refactor SORT into strong enum 2020-12-23 18:02:39 -03:00
Michael Steenbeek eeacb85310
Fix #13466: 'Build 5 roller coasters' excitement corrupted 2020-12-23 21:34:04 +01:00
Ted John 9809df8de6
Fix #13549: Ride name is truncated/resetted in Korean
Handle multi-byte RCT2 strings when converting to string_view.
2020-12-23 20:19:25 +01:00
Michael Steenbeek 5dd0ff12c4
Fix #13550: Cut height in Cut-away view window is missing 2020-12-23 20:13:00 +01:00
Michael Steenbeek 90964b38bb
Fix #13574: Object selection crashes if 'originalId' missing 2020-12-23 20:12:25 +01:00
Mike Jones 4e991beb8d
Closes #12419: Merge MISC_COMMAND and GAME_COMMAND into strong enum (#13103)
Merge MISC_COMMAND and GAME_COMMAND enums

Cleanup
2020-12-22 20:53:37 -03:00
csunday95 fa5437f920
Fix #13611: Zero under decimal is not displayed (#13618)
* fix for bug #13611; handled too few sig figs fixed point case

* added unit test cases to cover modified fixed point code

* removed blank line to satistfy clang-format

* sorted includes in formatting tests for clang-format

* removed redundant static_cast

 - already a char literal and assigning to char[] so code
 is functionally equivalent
2020-12-22 09:45:45 +00:00
Hielke Morsink cc6b56f1f5
Fix: Load game / Quit to the menu are not working in multiplayer (#13619) 2020-12-21 19:55:29 +00:00
Michael Steenbeek 4ac3b27ae9
Merge pull request #13614 from Gymnasiast/feature/rct1-surfaces
Feature/rct1 surfaces
2020-12-21 18:40:45 +01:00
Michael Steenbeek 94b6723f0d
Add some comments 2020-12-21 14:53:54 +01:00
Duncan 6da4a8d6af
Add individual vehicle motion update flag (#13607)
This can be used in conjuction with #13593 to change the placement of vehicles on a track
2020-12-21 13:25:39 +00:00
Gymnasiast 179b50358c
Add RCT1 surface styles 2020-12-20 21:45:21 +01:00
Gymnasiast 31dc155e0b
Use type bit 1 on surface element to store more surface styles 2020-12-20 21:45:04 +01:00
Richard Qian 157a78c8e6 Enable saving rides with scenery in track designer 2020-12-20 13:29:46 -06:00
Richard Qian 8bdfdad26c Refactor track designer object setup function to use UpperCamelCase 2020-12-20 13:08:36 -06:00
Richard Qian 84d5fde6bb Remove the max limit of 4 rides from the Track Designer 2020-12-20 13:08:36 -06:00
Richard Qian 6ee4bec0b1 Cleanup commented code, as testing shows nothing else adversely affected 2020-12-20 13:08:36 -06:00
Richard Qian 904af2cc4f Enhance the track designer with ability to add scenery and footpaths
This brings feature parity with Rollercoaster Tycoon Classic (RCTC)

Includes:
* Re-enabled buttons: Ride List, Map, Scenery, Path, Clear Scenery
* Add all standard footpaths and core scenery objects to the object selection

The max limit of 4 rides has not changed; other object types can have more than 4
Only a minimum set of scenery is enabled, as the full set cannot be included
2020-12-20 13:08:36 -06:00
Hielke Morsink 235afc4c62
Mark possibly unused variable as maybe_unused (#13612) 2020-12-20 15:35:23 +00:00
Gymnasiast d11862046c Actually make Spinning control track behave as such for Steel Wild Mouse 2020-12-19 15:35:35 -06:00
Gymnasiast bcf0e15c97 Fix formatting 2020-12-19 15:35:35 -06:00
Richard Qian 6568735fa8 Remove steep slope up access for both Splash Boats and River Rafts 2020-12-19 15:33:19 -06:00
Richard Qian 8e4dbcbba6 Fix incorrect label when using Spinning Control piece on Wild Mouse 2020-12-19 15:33:19 -06:00
Richard Qian 6a095f39a5 Enable more cheat pieces for Splash Boats and River Rafts 2020-12-19 15:33:19 -06:00
Richard Qian f293dee3d1 Fix incorrect label when using Log Bumps piece on Car Ride 2020-12-19 15:33:19 -06:00
Richard Qian b86c28a66e Restore extra cheat track pieces for some rides; intended to fix #13324
Includes:
* Corkscrew Roller Coaster
* Hypercoaster
* Steel Wild Mouse
* Spinning Wild Mouse
* Water Coaster
* Car Ride
* Monster Trucks

Some pieces are incorrectly labelled (log bumps and rotation control toggle),
and need to be investigated further
2020-12-19 15:33:19 -06:00
Łukasz Pękalski 9ec61fa5d2
Close #12993: Remove hardcoded {SMALLFONT}{BLACK} from tooltips 2020-12-19 20:53:57 +01:00
Kevin Singh d0afa7947f
Close #12451: Remove enum TILE_INSPECTOR_ELEMENT_TYPE (#13604) 2020-12-19 12:46:15 -03:00
Cory Sanin c28a1fc2bc
Fix: Docker build failure (#13605) 2020-12-18 10:20:57 +01:00
Cory Sanin 82fd8506ad
Feature: Add allowed_hosts to plugin section of config 2020-12-17 22:25:05 +01:00
Duncan 7440d7eb2b
Fix #13567: Added ability for peeps to stop eating certain food constanly (#13592)
* Fix #13567: Cure guests of severe gluttony

Incorrect assumption that bitscanforward itertated over 64 bits meant that food that was previously within the ExtraItemFlags would never get removed from the peeps inventory. bitscanforward function has been replaced with a 64bit version

* Bump network version
2020-12-17 17:45:40 +00:00
Duncan 3f53961e5d
Fix incorrect formatting of input and output of g2.dat (#13599)
* Fix incorrect formatting of input and output of g2.dat

* Fix entry offsets and empty data
2020-12-16 14:34:29 +00:00
Łukasz Pękalski af6512da19
Close #13386: Show a GUI error message if en-GB.txt cannot be loaded 2020-12-16 13:21:07 +01:00
Duncan 5b24a9accc
Cmdsprite 2 (#13590)
* Merge all cmdsprite global state into single struct

* Move MakeEntries into a member function

* Use std::optional for sprite file open

* Move sprite_file_save to a member function

* Make sprite_file_close a member function and rename open

* Remove global variable

* Make Entries a vector

* Make Data a vector

* Use FileStream for Open

* Use FileStream for Save

* Renmae Image Import/Export functions and cleanup

* Extract out common item AddImage

* Simplify SpriteFile::AddImage

* Header and struct cleanup

* Make suggested changes
2020-12-16 06:07:44 +00:00
xuxf 14bc3b6359
Close #12449: Refactor DUCK_STATE to use strong enum (#13585)
* Refactor DUCK_STATE to use strong enum
2020-12-14 12:54:41 -03:00
Tulio Leao 8fc167afc3
Move some game actions logic from header to source (#13571)
* Moving all definitions from B...Actions to source

* Moving all definitions from C...Actions to source

* Moving all definitions from F...Actions to source

* Moving all definitions from G...Actions to source

* Moving all definitions from L...Actions to source

* Moving all definitions from M...Actions to source

* Moving all definitions from N...Actions to source

* Moving all definitions from P...Actions to source
2020-12-13 15:10:26 +00:00
Duncan 04b26631c0
Fix #13576: Remove unrequired code and casts from sprite export
As not all objects load images in the same order the previous code could end up with sprite index's that were incorrect. There also was no reason to make the code object specific as we can just access the image table directly.
2020-12-12 23:18:08 +01:00
Michael Steenbeek abd7babc86
Get RTD from ride via a struct method, part 1 2020-12-12 22:53:50 +01:00
Tulio Leao 9ef4931982
Move remaining game actions logic from header to source (#13573)
* Moving all definitions from R...Actions to source

* Moving all definitions from S...Actions to source

* Moving all definitions from T...Actions to source

* Moving all definitions from W...Actions to source
2020-12-12 07:18:38 +00:00
Kevin Singh 3feefb09b1
Close #12443: Refactor TITLE_SCRIPT to use strong enum (#13540)
Close #12443: Refactor TITLE_SCRIPT to use strong enum
2020-12-10 08:01:54 -03:00
Adam f09b14ef2b
Split actions hpp files into separate h and cpp files (#13548)
* Split up SmallSceneryPlace/Remove

Added undo function for Remove Scenery

* Refactor: Balloon and Banner actions hpp=>h/cpp

* Refactor: rename all action *.hpp files to *.cpp

This is preparation for separation in later commits. Note that without
the complete set of commits in this branch, the code will not build.

* Refactor Clear, Climate, Custom, and Footpath actions hpp=>h/cpp

* VSCode: add src subdirectories to includePath

* Refactor Guest actions hpp=>h/cpp

* Refactor Land actions hpp=>h/cpp

* Refactor LargeScenery actions hpp=>h/cpp

* Refactor Load, Maze, Network actions hpp=>h/cpp

* Refactor Park actions hpp=>h/cpp

* Refactor/style: move private function declarations in actions *.h

Previous action .h files included private function declarations with
private member variables, before public function declarations. This
commit re-orders the header files to the following order:
- public member variables
- private member variables
- public functions
- private functions

* Refactor Pause action hpp=>h/cpp

* Refactor Peep, Place, Player actions hpp=>h/cpp

* Refactor Ride actions hpp=>h/cpp

* Refactor Scenario, Set*, Sign* actions hpp=>h/cpp

* Refactor SmallScenerySetColourAction hpp=>h/cpp

* Refactor Staff actions hpp=>h/cpp

* Refactor Surface, Tile, Track* actions hpp=>h/cpp

* Refactor Wall and Water actions hpp=>h/cpp

* Fix various includes and other compile errors

Update includes for tests.
Move static function declarations to .h files
Add explicit includes to various files that were previously implicit
(the required header was a nested include in an action hpp file, and the
action .h file does not include that header)
Move RideSetStatus string enum to the cpp file to avoid unused imports

* Xcode: modify project file for actions refactor

* Cleanup whitespace and end-of-file newlines

Co-authored-by: duncanspumpkin <duncans_pumpkin@hotmail.co.uk>
2020-12-10 06:39:10 +00:00
Ted John 5a849ededf
Fix plugin crash when nested scope occurs (#13556) 2020-12-09 22:38:15 -03:00
Michael Steenbeek 4a211278b2
Fix spelling of 'theming' 2020-12-09 11:33:33 +01:00
Duncan 9cbdae2ef1
Peep::ItemFlags merging (#13511)
* Merge standard and extra item flags for peeps

* Update replays
2020-12-09 09:21:23 +00:00
Duncan c12e1634fc
Merge LitterType into the shop item descriptor (#13513)
* Merge LitterType into the shop item descriptor

* Merge ConsumptionTime into ShopItem descriptor

* Merge in DiscardContainer into ShopItemDiscriptor

* Simplify itemOrderPreference

* Simplify guest code by using 64bit flags

* Remove operators for ShopItem

* Move PeepThoughtType TooMuch GoodValue into ShopItemDescriptor

* Reorg Get Flags and Has functions to make intention clear

* Constexpr shop item descriptors

* Constexpr shop item descriptors to compile time gen constants

* Fix formatting and spelling

* Revert operator++ removal
2020-12-09 06:55:06 +00:00
Duncan b59bf6d9cf
Fix #13552: Incorrect value for highscore pointer (#13554)
This was causing an invalid pointer dereference
2020-12-08 16:23:51 -03:00
Jamie Quigley 14ed1505ad
Remove unused WINDOW_EVENTS enum (#13542) 2020-12-08 15:39:38 -03:00
Michael Steenbeek f4bd903ec9
Merge pull request #13533 from duncanspumpkin/serial_2
FileIndex Serialise Cleanup
2020-12-07 20:52:25 +01:00
Jamie Quigley 03a9ac9f56
Close #12387: Refactored PeepThoughtType to use strong enum. (#13541) 2020-12-07 19:48:36 +00:00
duncanspumpkin 60729113d9 Simplify Serialise for FileIndex 2020-12-07 07:52:12 +00:00
duncanspumpkin ee9ede6c33 Use dataserialiser to simplify object repo code 2020-12-06 16:54:29 +00:00
Ted John 05622fd9bb
Merge pull request #13504 from IntelOrca/plugin/more-things
* Fix #13495: Add properties for park value, guests and company value
* Add more park attributes to plugin API
* Fix #13431: [Plugin] UI disabled widgets can still be interacted with.
* Fix #13078: [Plugin] Add colour picker widget
* Fix: #13509 [Plugin] Add ability to format strings
* Fix #13510: [Plugin] list view scroll resets when items is set.
* Fix #13512: [Plugin] Add item separators to list view
2020-12-06 16:13:07 +00:00
Tulio Leao 3a4ccfef37
Merge pull request #13523 from IntelOrca/fix/13517-date-format
Fix #13517: Bad formatting of dates
2020-12-06 10:17:59 -03:00
Duncan a9ed5d6536
Fix ObjectEntryDescriptor (#13506) 2020-12-06 09:28:06 +00:00
Michael Steenbeek 7df4f1835f
Rename incorrectly named RCT1 peep fields (#13528)
Photo2/3/4 and item extra flags are not present in RCT1, only in RCT2.
2020-12-06 01:10:25 -03:00
Ted John 6a00c78750
Fix #13527: Read access violation in format_string (#13529) 2020-12-06 01:08:43 -03:00
Ted John 687fd6d9f4 Increment plugin API version 2020-12-05 18:32:28 +00:00
Ted John 95c3a7f5dd Fix #13512: [Plugin] Add item separators to list view 2020-12-05 18:32:24 +00:00
Ted John a7e49e41d3 Fix #13510: [Plugin] list view scroll resets when items is set. 2020-12-05 18:26:35 +00:00
Ted John be8736ffaa Fix: #13509 [Plugin] Add ability to format strings 2020-12-05 18:26:35 +00:00
Ted John 030713e126 Fix #13078: [Plugin] Add colour picker widget 2020-12-05 18:26:35 +00:00
Ted John a55bcff99c Fix #13431: [Plugin] UI disabled widgets can still be interacted with. 2020-12-05 18:26:35 +00:00
Ted John acaa72cce8 Add more park attributes to plugin API 2020-12-05 18:26:34 +00:00
Ted John b1403db509 Fix #13495: Add properties for park value, guests and company value 2020-12-05 18:26:34 +00:00
Łukasz Pękalski 4adf745237
Close #12403: Refactor FILTER_PALETTE_ID to use strong enum (#13273) 2020-12-05 15:13:59 -03:00
Adam 1b61b4b104
Fix #13489: Mechanics continue heading to inspect broken down rides (#13490)
* Fix #13489: Mechanics continue heading to inspect broken down rides
2020-12-05 15:05:55 -03:00
Ted John d6fd4ed64b Allow formatting in in-game console 2020-12-05 14:14:09 +00:00
Ted John 164f570aae Fix #13517: Bad formatting of dates 2020-12-05 13:56:08 +00:00
Ted John 9fda9b741c
Fix #13517: Bad formatting of chat messages (#13521)
* Bump network version which was the main cause of the problem.
* Ensure each chat line starts with some format codes.
2020-12-05 13:23:21 +00:00
Ted John d58d834925
Merge pull request #13212 from IntelOrca/new-format-string
Eradicate all coded format tokens. All internal strings now contain raw tokens such as `{STRINGID}` and `{RED}`. New iterators have been created to iterate the tokens and the UTF-8 codepoints.

Formatting strings has been re-written and a new template version is available.
2020-12-04 13:56:54 +00:00
Łukasz Pękalski 3de233c796
Close #12395: Refactor PeepItem to use strong enum (#13311)
* refactor: integrated PEEP_ITEM into SHOP_ITEM

* refactor: converted merged enum to flag

Only former occurrences of PEEP_ITEM

* cleanUp: code cleaned after merging

* refactor: converted ShopItem to strong enum

code reformatting

* refactor: ShopItem enum items renamed

code formatted

* refactor: new getter and setter functions for Item...Flags

* refactor: replaced all occurrences of ItemStandardFlags

with appropriate getter and setter functions.
COMPARE_FIELD macro needs to be commented out or the flag has to stay public.

* refactor: all occurrences of ItemExtraFlags replaced

with proper function calls. COMPARE_FIELD macro issue not resolved.

* refactor: introduced new variable for unified item flags

* refactor: adapted accessor functions

accessor functions were modified to accommodate both standard and extra ShopItem flags

* refactor: ItemExtraFlags accessor functions are replaced

with general functions

* refactor: reverted to original uint32_t flag variables

* refactor: implemented suggested changes

* refactor: integrate additional comments

* refactor: incorporated requested changes

* refactor: incorporated requested changes

added static_cast<PeepThoughtType> in lines 1572 and 1590
2020-12-03 21:15:59 -03:00
Ted John 8ce924bd64 Fix Docker CI, explicit copy constructor 2020-12-03 22:05:24 +00:00
Michael Steenbeek 7ea828db02
Merge pull request #13503 from Gymnasiast/refactor/object-entry-descriptor
Create ObjectEntryDescriptor to properly handle mixed DAT and JSON
2020-12-02 19:52:30 +01:00
Gymnasiast 596aa71093
Create ObjectEntryDescriptor to properly handle mixed DAT and JSON 2020-12-02 17:17:25 +01:00
ffrogman 5994e194f4
Close #13476: Unneeded colour variables in TopToolbar.cpp 2020-12-02 12:23:38 +01:00
Margen67 f37fcad111
Add pause button to the Track Designer (#13483)
Fixes #13398
2020-11-30 13:27:36 -03:00
Ted John 8021af2c6b
Fix #13477: Plug-in widget tooltips do not work (#13486) 2020-11-29 21:11:07 -03:00
Ted John 17edaae02b Improve banner formatting fix 2020-11-29 01:19:51 +00:00
Ted John 699103fe86 Fix banner text formatting, import / export 2020-11-28 16:52:19 +00:00
Ted John 55dc985c57
Fix #13469: Exception thrown from plugin in context.subscribe (#13470)
Throw a JavaScript exception, not a C++ exception when invalid parameters are passed to subscribe.
2020-11-28 14:03:15 +01:00
Ted John 5a90cd4163 Apply a few more code review comments 2020-11-27 18:54:58 +00:00
Ted John 9e7504fd98 Improve RCT12 UTF-8 checks 2020-11-27 18:54:58 +00:00
Ted John 517e964975 Fix title screen and object manager text issues 2020-11-27 18:54:58 +00:00
Ted John 503a383301 Do not format characters in text input 2020-11-27 18:54:57 +00:00
Ted John ec03ce5317 Improve handling of braces 2020-11-27 18:54:57 +00:00
Ted John 9173ec2111 Handle int64 edge cases in Format 2020-11-27 18:54:57 +00:00
Ted John dfcd8a4bbc Apply code review comments 2020-11-27 18:54:57 +00:00
Ted John 086f10c183 Remove includes already in header 2020-11-27 18:54:57 +00:00
Ted John fd605d7399 Apply review comments and fix build 2020-11-27 18:54:57 +00:00
Ted John 167aaac633 Fix TTF issues 2020-11-27 18:54:57 +00:00