Ted John
b1a54fa7ba
Fix #14264 : [Plugin] Cannot modify the coordinate / size of the viewport
2021-03-08 19:52:26 +01:00
Michael Steenbeek
6a11dbf0c9
Fix #14247 : Scenarios from RCT1 allow hiring too many staff
2021-03-07 13:54:01 +01:00
Ted John
4b9c704096
Log warning instead of assert in research_finish_item
2021-03-07 12:53:41 +00:00
Michael Steenbeek
140cc442ac
Merge pull request #14252 from Phelicks/develop
...
Add plugin API for vehicle g-forces
2021-03-07 13:46:16 +01:00
Michael Steenbeek
d5426c3779
Fix #14123 : NPE in map_obstruction_set_error_text()
2021-03-07 13:37:23 +01:00
Michael Steenbeek
e4e26eeb2a
Fix #14167 : NPE in Guest::UpdateRideFreeVehicleCheck()
2021-03-07 13:21:23 +01:00
Michael Steenbeek
9d1643d3ce
Fix #14217 : Crash in large_scenery_paint()
2021-03-07 00:08:51 +01:00
Felix
9ec30e6869
Increase API version and update changelog
2021-03-06 23:51:02 +01:00
Felix
f30a2d417a
Fix formatting
2021-03-06 23:36:38 +01:00
Felix
78785fffbe
Add plugin API for vehicle g-forces
2021-03-06 23:25:26 +01:00
Michael Steenbeek
64807147e6
Fix #14126 : assertion in research_fix()
...
The assertion was hit because of a non-existant ride type being passed into ride_type_set_invented(). Try to avoid this by fixing DAT files when loading them.
2021-03-06 20:57:48 +01:00
Michael Steenbeek
58c3426747
Fix #14239 : NPE in peep_find_ride_to_look_at() ( #14243 )
2021-03-06 16:18:16 +00:00
Ted John
966129dd7c
Remove network traffic window
...
Now available in the DevTools plugin.
2021-03-06 14:47:06 +01:00
Ted John
b179f6e597
Merge pull request #13965 from telk5093/footpath_hotkeys
...
Make ride construction shortcuts work for footpath too
2021-03-06 01:27:18 +00:00
Michał Janiszewski
29a1cf018d
Add negative tests for SawyerChunkReader
2021-03-03 21:55:05 +01:00
Michał Janiszewski
bf95260f37
Fix issues found in SawyerChunk decoder
2021-03-03 21:29:39 +01:00
Gymnasiast
50da55eaf3
Fix #14212 : Multiline news messages are shown incorrectly
2021-03-02 22:48:33 +01:00
Michael Steenbeek
e40c0af9fd
Merge pull request #13682 from adam-bloom/macos_cmake_dylib
...
macOS CMake with vcpkg dependencies
2021-03-01 14:53:37 +01:00
adam-bloom
f6edf8d601
fix static library name for PkgConfig
2021-02-28 15:48:30 -07:00
adam-bloom
9efe184538
macOS cmake CI fixes
...
Use ninja instead of make for faster builds
Proper library linking of dependencies
2021-02-28 15:48:30 -07:00
adam-bloom
7bea24708e
Fix GetBundlePath, add install paths to match cmake install
2021-02-28 15:48:29 -07:00
Michał Janiszewski
6249635fb8
Guard potentially unused const with proper defines
2021-02-28 23:10:25 +01:00
Gymnasiast
7fd049c22e
Remove last remnants of gCurrentFontSpriteBase
2021-02-28 00:26:53 +01:00
Gymnasiast
c40701d997
Make gfx_draw_string() take a TextPaint argument
2021-02-28 00:26:20 +01:00
Gymnasiast
503273793a
Remove gCurrentFontSpriteBase from some functions
2021-02-28 00:26:20 +01:00
Gymnasiast
826f6c7442
Reduce usage of gCurrentFontSpriteBase
2021-02-28 00:25:30 +01:00
Gymnasiast
3e536e2711
Change gfx_draw_string_*_wrapped() to DrawTextWrapped()
2021-02-28 00:23:01 +01:00
Gymnasiast
e2ebc9d43b
Replace gfx_draw_string_left() with DrawTextBasic()
2021-02-28 00:23:00 +01:00
Gymnasiast
d5f79b7972
Replace gfx_draw_string_centred() with DrawTextBasic()
2021-02-28 00:23:00 +01:00
Gymnasiast
a4747b9c8c
Fix initial value of SpriteBase
2021-02-28 00:23:00 +01:00
Gymnasiast
4d9c278ebc
Unify calls to DrawTextBasic
2021-02-28 00:23:00 +01:00
Gymnasiast
13e7ec6e8e
Allow passing TextPaint to DrawTextBasic()
2021-02-28 00:23:00 +01:00
Gymnasiast
ac1e9abb56
Create constructors for TextPaint
2021-02-28 00:23:00 +01:00
Gymnasiast
c296c35f39
Use colour_t for colours enum
2021-02-28 00:23:00 +01:00
Gymnasiast
2477933c51
Turn font sprite base into a strong enum
2021-02-28 00:23:00 +01:00
Gymnasiast
582037bbf3
Create enum class for text underline
2021-02-28 00:23:00 +01:00
Ted John
49b677780f
Merge pull request #14171 from IntelOrca/plugin/custom-widget
...
* Add API for getting network traffic statistics.
* Add API for creating custom widgets.
* Add API for drawing graphics for custom widgets.
* Add click event to spinners and allow them to be held down.
2021-02-27 01:31:00 +00:00
Michael Steenbeek
08f07e6135
Reduce usage of gCurrentFontSpriteBase ( #14178 )
2021-02-26 15:39:20 +01:00
Michael Steenbeek
9397feaa44
Merge pull request #14134 from duncanspumpkin/reorg_entityexport
...
Rework how entity export works to allow for easier changes in future
2021-02-26 13:08:56 +01:00
Michael Steenbeek
28c680f97f
Merge pull request #14163 from Gymnasiast/refactor/get-rtd
...
Use GetRideTypeDescriptor() in more places
2021-02-26 10:46:38 +01:00
Gymnasiast
48f513f73f
Apply review request; fix Testpaint
2021-02-26 10:19:03 +01:00
Gymnasiast
44d0e77afb
Make all access to RTD table use the bounds checking function
2021-02-26 10:01:00 +01:00
Gymnasiast
62f8796677
Replace more flag checking
2021-02-26 09:51:17 +01:00
Gymnasiast
f118b2ede4
Replace ride_type_has_flag() with retrieving RTD
2021-02-26 09:49:09 +01:00
Gymnasiast
b1ab20ec27
Replace loose flag checking with helper function
2021-02-25 23:04:40 +01:00
Michał Janiszewski
ac6e4fc0d6
Move SPRITE_INDEX_NULL, MAX_SPRITES to their new homes
2021-02-25 10:56:27 +01:00
Michał Janiszewski
67b61478cf
Reduce inclusion of EntityList.h
2021-02-25 10:56:27 +01:00
Michał Janiszewski
6baff43f52
Reduce inclusion of Sprite.h
2021-02-25 10:56:27 +01:00
Michał Janiszewski
24f0407740
Add missing include in Windows. cpp
2021-02-25 10:56:27 +01:00
Michał Janiszewski
003e5a0136
Change include guards
2021-02-25 10:56:27 +01:00
Michał Janiszewski
8ee49ab615
Reduce inclusion of world/Sprite.h
2021-02-25 10:56:27 +01:00
Michał Janiszewski
bfdf6874ac
Reduce inclusion of Vehicle.h
2021-02-25 10:56:27 +01:00
Ted John
c7d9eba9db
Increment plugin API version
2021-02-24 22:56:29 +00:00
Ted John
c2183989a5
Allow spinners to be clicked and held
2021-02-24 22:37:31 +00:00
Ted John
c1b0df5de6
Improve graphics plugin API
2021-02-24 22:37:31 +00:00
Ted John
93f17f1175
Add custom widget logic and network stats API
2021-02-24 22:37:31 +00:00
Ted John
82b1a5eb6d
Convert CustomWindow into a class
2021-02-24 22:37:31 +00:00
Ted John
faf7f5706f
Merge pull request #14158 from IntelOrca/fix/14149-shortcuts-save
...
Fix #14149 : Numpad shortcut keys are not loaded correctly
Fix #14160 : Game crashs when registering shortcuts
Fix #14161 : ShortcutDesc.bindings does not work
2021-02-24 22:19:30 +00:00
Gymnasiast
d63e3b1d9f
Replace RideTypeDescriptors[ride->type] with GetRideTypeDescriptor()
2021-02-24 14:10:30 +01:00
Gymnasiast
56399e7188
Use the RTD instead of ride_type_has_flag()
2021-02-24 14:10:30 +01:00
Gymnasiast
429f6fb845
Always return an RTD
2021-02-24 14:10:22 +01:00
duncanspumpkin
d2fdf0917b
Remove static casts and use union
2021-02-24 08:08:59 +00:00
duncanspumpkin
11da10971f
Reorg again to reduce casts
2021-02-24 08:00:38 +00:00
TELK
99e72dde3f
Change StringIds to more generic
2021-02-24 16:50:40 +09:00
duncanspumpkin
9da6ba01bb
Rename variables
2021-02-24 07:50:37 +00:00
Michael Steenbeek
f32fe2b7e4
Fix #14145 : Crash in RCT2TrackTypeToOpenRCT2()
2021-02-23 23:15:19 +01:00
Michael Steenbeek
aa11a1ee96
Fix RCT1 shop import ( #14157 )
...
Regression from https://github.com/OpenRCT2/OpenRCT2/pull/14021
2021-02-23 19:13:26 -03:00
Ted John
aedd93ef33
Add remove button to clear a shortcut
2021-02-23 21:34:32 +00:00
TELK
ea5cf16924
Feature: Make ride construction shortcuts work for footpath too
2021-02-23 16:11:53 +09:00
Cory Sanin
57c950958b
Feature: Add option for taking transparent screenshots
2021-02-22 22:48:51 +01:00
Michael Steenbeek
8e414a9d97
Merge pull request #14121 from ZehMatt/refactor/tileinspector
...
Refactor Tile Inspector
2021-02-22 11:07:46 +01:00
duncanspumpkin
48e4a24fee
Update naming
2021-02-21 18:06:49 +00:00
Matt
dabeb036a6
Apply review suggestions
2021-02-21 19:13:58 +02:00
ζeh Matt
c9ca066e94
Merge pull request #14024 from ZehMatt/refactor/coords-peep-destination
...
Use CoordsXY for for some types
2021-02-21 15:33:52 +02:00
Michael Steenbeek
0cdbc99984
Merge pull request #13848 from IntelOrca/refactor/shortcut-engine
...
Introduce new shortcut engine
2021-02-21 14:01:39 +01:00
duncanspumpkin
b9173642ba
Rework how entity export works to allow for easier changes in future
2021-02-21 12:43:51 +00:00
Matt
b080bfe1d4
Only affect the tile inspector state if the position matches
2021-02-21 14:38:15 +02:00
Duncan
2b26e423e4
Remove AsGuest and AsStaff duplicated functions
2021-02-21 13:23:31 +01:00
Matt
5b42fa0dbb
Simplify velocity acceleration
2021-02-21 09:59:05 +02:00
ζeh Matt
d3cae77230
Merge pull request #14129 from ZehMatt/refactor/UpdateSwingingCar
...
Refactor UpdateSwingingCar function
2021-02-21 09:58:15 +02:00
Matt
571bf0dab1
Apply review suggestions
2021-02-21 09:52:33 +02:00
Matt
62baee3adb
Allow passing of destination tolerance via SetDestination
2021-02-21 09:52:33 +02:00
Matt
965041b437
Remove direct access to DirectionX and DirectionY
2021-02-21 09:52:33 +02:00
Matt
2bb5bb9988
Add getter and setter for destination in Peep
2021-02-21 09:52:32 +02:00
Matt
ed4d8b4552
Add getter and setter for location in SpriteBase
2021-02-21 09:52:32 +02:00
Matt
a2ebec8676
Add multiply and divide to coordinate components
2021-02-21 09:52:32 +02:00
Matt
a232749b2f
Refactor UpdateSwingingCar function
2021-02-21 09:30:17 +02:00
Ted John
e28c23f10f
Fix regression in CreateSocket ( #14131 )
2021-02-21 03:58:34 +00:00
Ted John
ff86ebbfe5
Localise shortcut strings
2021-02-21 03:14:19 +00:00
Ted John
2b3e7b98b8
Roll our own implementation of parse
2021-02-21 03:14:19 +00:00
Ted John
2b197d0fb2
Fix parsing of shortcuts
2021-02-21 03:14:18 +00:00
Ted John
46c3fd4e5f
Use FileStream instead of fstream
2021-02-21 03:14:18 +00:00
Ted John
2b3aabb8e4
Remove old shortcut code and fix issues
2021-02-21 03:14:18 +00:00
Ted John
af0ed416f5
Implement loading / saving of new shortcuts
2021-02-21 03:14:18 +00:00
Ted John
afb4500c49
Add eye icon for tab
2021-02-21 03:14:18 +00:00
Ted John
e7ae9f9f15
Read legacy shortcuts and move to constants
2021-02-21 03:14:17 +00:00
Ted John
e5f263a0fc
Get new manager showing in window
2021-02-21 03:13:27 +00:00
Michael Steenbeek
345c436f19
Fix #14119 : Illegal array access in vehicle_move_info_valid()
2021-02-20 22:53:40 +01:00
Michał Janiszewski
9aef29361f
Default-initialise more fields ( #14130 )
...
Doesn't really fix any particular issue, but adds more defaults to
fields in classes where other defaults are already present
2021-02-20 19:40:32 +01:00
Ted John
e7adf19f62
Merge pull request #14059 from IntelOrca/improve-viewport-filter-flags
...
[Plugin] Add optional filter to custom tools
2021-02-19 20:33:27 +00:00
Matt
b613835756
Remove more duplicate code
2021-02-19 18:39:08 +02:00
Matt
ffc2e7a0e7
Cleanup duplicate code
2021-02-19 18:28:09 +02:00
Matt
c1767bc98b
Rename function and use std::swap
2021-02-19 18:17:15 +02:00
Matt
62a01fe043
Move tile inspector code into TileInspector namespace
2021-02-19 18:12:22 +02:00
Michael Steenbeek
2379c7c9a6
Bump network version
2021-02-19 09:36:45 +01:00
Michael Steenbeek
7274c6a7e7
Remove some unused symbols
2021-02-18 21:15:50 +01:00
Ted John
f7bbaed7f5
Increment plugin API version
2021-02-18 18:10:29 +00:00
Ted John
762b6ee816
Refactor viewport interaction flags and add plugin API
2021-02-18 18:10:29 +00:00
Ted John
27013d147a
Invalidate viewport when moving without scrolling
2021-02-18 18:10:29 +00:00
Gymnasiast
8968dd2274
Apply Duncan's request
2021-02-18 17:53:30 +01:00
Gymnasiast
81fbe27dcb
Guard against accessing non-existant ride types
2021-02-18 17:50:20 +01:00
Gymnasiast
92dc3f4aa9
(Try to) make proximity track type calculation more robust
2021-02-18 17:50:19 +01:00
Gymnasiast
a28c22866c
Remove stray semicolon
2021-02-18 17:50:19 +01:00
Gymnasiast
1b964c0f2e
Refactor flat ride track pieces
2021-02-18 17:50:19 +01:00
Ted John
1523597b50
Fix test failures
2021-02-16 20:25:11 +00:00
Ted John
3f5698b1e0
Fix REPL write line on Linux
2021-02-16 20:24:51 +00:00
Ted John
05cb106ee7
Improve advertise messages
2021-02-16 20:24:50 +00:00
Ted John
c30e1f083b
Improve network console messages
2021-02-16 20:24:50 +00:00
Michał Janiszewski
882d3d6356
Merge pull request #14096 from janisozaur/tileelembase
...
Move TileElementBase to its own file
2021-02-15 13:12:58 +01:00
ζeh Matt
90a86cd5f3
Merge pull request #14081 from ZehMatt/refactor/ReadArray
...
Refactor IStream::ReadArray to return unique_ptr
2021-02-15 00:50:10 +02:00
Michał Janiszewski
cef1efea44
Move TileElementBase to its own file
2021-02-14 21:28:02 +01:00
Michael Steenbeek
6e20f41d3c
Fix #13688 : invalid access to _objectSelectionFlags
2021-02-12 23:06:05 +01:00
Duncan
bcc2fbf095
Reduce use of naked new and delete ( #14084 )
2021-02-12 20:20:51 +00:00
Matt
c30bd1266f
Refactor IStream::ReadArray to return unique_ptr
2021-02-12 19:30:53 +02:00
ζeh Matt
34b1506c5d
Fix #14058 : Ride entry or exit can not be built in multiplayer ( #14064 )
2021-02-12 15:54:32 +00:00
Duncan
14cca95fec
Fix #14067 : Nullptr exception in vehicle measurement code
2021-02-11 09:49:13 +01:00
Duncan
fe8b8280e8
Fix #7772 . Check for vehicles using an object when setting inuse ( #14056 )
...
* Fix #7772 . Check for vehicles using an object when setting inuse
* Update changelog
2021-02-10 18:14:23 +00:00
Gymnasiast
841d6a5f24
Avoid truncating banner index; check for NULL
2021-02-10 15:22:49 +01:00
Gymnasiast
2aae1cb84e
Fix #13235 : NPE in fix_duplicated_banners()
...
Co-authored-by: IntelOrca <ted@brambles.org>
2021-02-10 15:14:46 +01:00
Michael Steenbeek
f75a48d8dc
Merge pull request #14034 from Gymnasiast/fix/12939
...
Fix #12939 : divide-by-0 in Vehicle::UpdateMotionDodgems()
2021-02-09 22:18:49 +01:00
Gymnasiast
25b26e769d
Rename ebx to momentum
2021-02-09 20:32:05 +01:00
Michael Steenbeek
7744458cc8
Fix #12861 : Divide-by-0 in UpdateTrackMotionMiniGolf
...
This fix had already been applied to UpdateTrackMotionPoweredRideAcceleration(), but not here.
2021-02-09 20:02:15 +01:00
Michael Steenbeek
0a8cfe75b0
Merge pull request #13969 from IntelOrca/plugin/title-seq
...
[Plugin] Add APIs for editing title sequences
2021-02-09 19:56:16 +01:00
Gymnasiast
45464cddeb
Fix #12939 : divide-by-0 in Vehicle::UpdateMotionDodgems()
2021-02-09 19:13:38 +01:00
Matt
7d517caced
Move peep pickup test into Peep::CanBePickedUp
2021-02-09 00:31:29 +02:00
Ted John
17450c236e
Increment plugin API and update changelog
2021-02-08 22:28:59 +00:00
Ted John
477677775f
Fix crash if save does not exist
2021-02-08 22:27:28 +00:00
Ted John
129d85fa57
Implement title sequence playing
2021-02-08 22:27:28 +00:00
Ted John
d2a97ab43c
Implement scenario select window
2021-02-08 22:27:28 +00:00
Michael Steenbeek
27b7657d1d
Merge pull request #13998 from ZehMatt/refactor/tileelementsview-4
...
Use TileElementsView and minor cleanups
2021-02-08 22:18:27 +01:00
Ted John
17f4f3aaf8
Refactor text input window to class
2021-02-07 22:36:31 +01:00
Gymnasiast
fedfe7d166
Use track_type_t in RideRatingCalculationData
2021-02-07 22:08:11 +01:00
spacek531
fc1fd60dfc
change track type in import/export
2021-02-07 22:07:25 +01:00
spacek531
12697e9893
fix ratings not being calculated?
2021-02-07 22:07:25 +01:00
spacek531
ea6fdc4708
fix piece height
2021-02-07 22:07:24 +01:00
Cory Sanin
456202b0f5
Feature: Use allowed_hosts when creating listening socket
2021-02-06 16:47:56 +01:00
Ted John
fe70cf26a7
Fix #13933 : Clients do not run server plugins
2021-02-05 23:27:15 +01:00
Matt
8bfda5cab1
Use correct condition
2021-02-05 20:08:51 +02:00
Matt
35e52acd7d
Remove unused variable
2021-02-05 18:41:20 +02:00
Matt
ee3a36dc0f
Use TileElementsView for guest code
2021-02-05 18:20:44 +02:00
Matt
9dde45fb05
Use TileElementsView for virtual floor
2021-02-05 17:39:25 +02:00
Matt
93e22d6770
Use TileElementsView for WallRemoveAction
2021-02-05 17:34:05 +02:00
Matt
ddd67db1d2
Use TileElementsView for SmallSceneryRemoveAction
2021-02-05 17:28:18 +02:00
Matt
83221d51aa
Use TileElementsView for RideEntranceExitRemoveAction and cleanup
2021-02-05 17:25:07 +02:00
Matt
5e2e7143cd
Use TileElementsView for LargeSceneryRemoveAction and cleanup
2021-02-05 17:10:17 +02:00
Matt
5bd6ba25b7
Use TileElementsView for LandSetRightsAction
2021-02-05 16:59:04 +02:00
Matt
cf91a13d1e
Use TileElementsView for LandSetHeightAction
2021-02-05 16:54:50 +02:00
Matt
dc1c3fe451
Use TileElementsView for FootpathPlaceAction
2021-02-05 16:44:05 +02:00
Matt
a7b8978f6e
Use TileElementsView for BannerRemoveAction
2021-02-05 16:38:39 +02:00
Matt
5caa6abc85
Use TileElementsView for BannerPlaceAction
2021-02-05 16:33:40 +02:00
Matt
1aa75f04b7
Add templated version for tile element insertion and cleanup code
2021-02-05 12:22:34 +02:00
Matt
41c6c0bee3
Support casting back to TileElement
2021-02-04 20:29:32 +02:00
Matt
71174b8de7
Make the insertion of tile elements type explicit
2021-02-04 19:00:59 +02:00
ζeh Matt
6186766a05
Introduce TileElementsView ( #13975 )
...
* Simplify TileElement type conversation
* Introduce TileElementsView
* Move TileElementsView code into TileElementsView.h
* Cleanup code and move into OpenRCT2 namespace
* Use reference instead of pointer
* Fix include
* Make GCC happy
* Move the cast functions into base
* Use the cast function instead of reinterpret_cast
* Add TileElementsView tests
* Fix iterating on TileElementBase, return pointer not reference
2021-02-04 18:58:45 +02:00
Cory Sanin
a4f58c67f4
Fix #13961 : Guests sliding down slide missing on close zoom levels
2021-02-04 14:03:52 +01:00
Duncan
9d3f3fa224
Fix #13234 . Check for correct peep state when removing mass ( #13983 )
...
* Check for correct peep state when removing mass
* Add apply mass function
* Increment network version
* Fix #13234 . Add to changelog
2021-02-03 09:13:56 +00:00
Umdlye
2c408342d9
Create toggle for zoom toolbar button
2021-02-01 17:27:40 +01:00
Jaime Centeno
83fcfa6e68
Refactored water window code into WaterWindow class
...
Created a new WaterWindow class that inherits from Window class and overrides On methods. Added a new generic method for WindowFocusOnCreate that takes position as an argument.
2021-02-01 14:33:22 +01:00
Duncan
2d6da7551b
Fix #13958 : Queue corruption due to intersecting entrances
...
There was a whole host of bugs that this issue has exposed which were caused by intersecting the queue of a ride with an entrance/exit or shop. When this was done the peep would be removed from the queue incorrectly and could end up at the wrong station or a variety of other unexpected behaviour
2021-01-30 17:20:01 +01:00
ζeh Matt
9ff2138f3f
Remove unused variable gCurrentFontFlags
2021-01-30 16:46:22 +01:00
Michael Steenbeek
e3a1af3d05
Use getters/setters for track type and direction
2021-01-30 15:16:17 +01:00
ζeh Matt
15ef22c2f6
Merge pull request #13970 from ZehMatt/refactor/fixed-vector
...
Use FixedVector for paint_structs
2021-01-30 12:57:12 +02:00
Duncan
dc113ff6e4
Remove dead code from #6819 ( #13971 )
...
This was missed back in 2017 there is now no longer a reason to make a backup tunnel array as we never modify it. I've also added a const to make it clear we never write to the array
2021-01-30 08:33:36 +00:00
Matt
64cbccdda6
Re-order members of paint_struct for better code generation
2021-01-30 09:16:42 +02:00
Matt
3fecb36a19
Use fixed vector for paint_entry
2021-01-30 09:16:42 +02:00
Ted John
4a37f1479c
Merge pull request #13927 from IntelOrca/plugin/extra-ui
...
* Add isVisible property to widgets so that you can easily show / hide widgets.
* Add new text box widget for text input
* Allow plugin windows to be transparent
* Add `textAlign` property to label widget
2021-01-29 20:55:25 +00:00
Michael Steenbeek
d3a4c16270
Reserve room for tile owner
2021-01-29 16:56:33 +01:00
spacek531
1e3fe9b550
Separate booster track elem type ( #13857 )
...
* add data to Track.cpp
add data to TrackData.cpp
add import helper functions
fix Booster value
import booster as 256
export booster as 100
add vehicle subposition data
add SV4 import
add TD4 import
add TD6 import
use track_type_t when importing TD6
add TD6 export
change peep tracktype type to auto
fix SV4 track element import
fix import of booster speed
add None enum to TrackElemType
move _legacy RideConstruction functions to Ride.cpp
change _currentPossibleRideConfigurations to use track_type_t
fix booster track category
add booster string tto
expand _currentTrackCurve to 32 bits
expand track_curve_chain to 32 bits
update get_track_element et al. to handle 16 bit track types
run clang-format
remove unused #includes from _legacy.cpp
Revert "remove unused #includes from _legacy.cpp"
This reverts commit 4c4d4b06edb0c130314789d8fe371246be246c9f.
Revert "update get_track_element et al. to handle 16 bit track types"
This reverts commit 73920dafd4a6c9e7c9f0c7ee1098d493f8f5d262.
Revert "move _legacy RideConstruction functions to Ride.cpp"
This reverts commit 2d83a75c1477d387ad77a7a5085f37a28f72a589.
update _legacy functions for 16-bit track types
update ride_construction_reset_current_piece behavior with new enum
fix declaration of _currentTrackCurve to match other track tcurve vars
remove unused include from T4Importer.cpp
move SCT to 256 part 1: RideConstruction.cpp
move SCT to 256 part 2: TrackData.cpp
move SCT to 256 part 3: Ride.h/Ride.cpp
move SCT to 256 Part 4: revert changes to S4Importer.cpp, T4Importer.cpp
fix stations appearing as curves
fix too many initializers in TrackData.cpp
move SCT to 256 part 5: S6/T6 importing and exporting
move SCT to 256 part 6: simplify RCT12.cpp functions
fix comments in S6Exporter.cpp, S6Importer.cpp
fix clang-format on S6Importer.cpp
add missing data to TrackData.cpp
revert new functions for checking if track type is a booster
revert unused include
change trackType to auto and add comment to S6Exporter.cpp
move track type aliasing from TrackDesign.cpp to T6Import.cpp, T6Export.cpp
add comment about sv6 vehicle.track_type
static cast to uint8_t in T6Exporter.cpp`
set type to auto when setting value to _currentTrackCurve
revert moving function in S6Importer.cpp
fix value names in RideData.cpp
revert cahnge to uint16_t return for GetTrackType() in RCT12.cpp
fix GetTrackType return type for real
add changelog entry
bump network version
cast alternate track type to track_type_t
static_cast tuple input value in _legacy.cpp
change _currentTrackCurve to uint32
use TrackElemType::Count to determine length of subposition array
perform some changes
remove padding from rct_trackdefinition
fix alternative type check
remove _boosterTrackSelected
add missing condition for booster speed
add comments for TrackElemType::MultiDimInvertedUp90ToFlatQuarterLoop
add missing comments to RideData.cpp
remove extra entry
simplify some things
fix formatting
remove redundant checks todo: fix building the track piece
use TrackElemType::None more
remove git.txt
* bump network version
* make conditional more explicit w/ parentheses
* move booster check to RCT12.cpp
* implement getters and setters for vehicle track type and direction
* fix formatting
* rename RCT12TrackTypeIsBooster to RCT2TrackTypeIsBooster
* add whitespace in RCT2.h
* change the thing I thought I changed
* move booster check function to RCT2.cpp
* move function into if condition
* fix scope issues with setters
2021-01-29 15:24:53 +00:00
ζeh Matt
109a06663d
Fix entrance or exit stacked on top considered a duplicate
2021-01-29 16:19:07 +01:00
Ted John
c2eb6d4153
Improve plugin API and type definitions
2021-01-28 20:52:17 +00:00
Ted John
383cbe5368
Load music into the correct slots
2021-01-27 19:26:28 +00:00
Ted John
a9755609c2
Move ride audio into own namespace
2021-01-27 18:45:28 +00:00
Ted John
28f4ec2b43
Implement code review suggestions
2021-01-27 18:45:28 +00:00
Ted John
d9b8413ec4
Use IStream for zip streaming
2021-01-27 18:45:27 +00:00
Ted John
2f39442d25
Implement ride music objects and refactor
2021-01-27 18:45:27 +00:00
ζeh Matt
db4841ca45
Avoid copy and allocation for rendering the viewport ( #13911 )
2021-01-27 07:28:07 +00:00
ζeh Matt
ea9d4f35c9
Merge pull request #13938 from janisozaur/nullptr_check
...
Add nullptr check in get_loaded_object_entry
2021-01-27 08:14:04 +02:00
ζeh Matt
8eab5d167e
Merge pull request #13869 from ZehMatt/feature/timescale
...
Allow the main game loop to scale the delta time
2021-01-27 06:09:51 +02:00
Ted John
4d8faee062
Increment plugin API version
2021-01-27 00:28:59 +00:00
Ted John
c0d8786af8
Add text box widget
2021-01-27 00:28:59 +00:00
Duncan
8c5cd61b69
Split free id's into seperate vector ( #13924 )
2021-01-26 07:42:56 +00:00
Ted John
be350f7e2e
Add widget visible flag
2021-01-26 00:25:59 +00:00
Ted John
c9a07eaa84
Refactor staff window to class ( #13819 )
2021-01-25 21:57:06 +00:00
ζeh Matt
329b228cac
Fix #13916 : use correct constant for maximum station locations
2021-01-23 23:06:05 +01:00
Michał Janiszewski
b1e43f828b
Add nullptr check in get_loaded_object_entry
2021-01-23 22:26:02 +01:00
Duncan
eb52391b9a
Remove next_in_quadrant ( #13754 )
...
* Use std::vector of quadrants
* Prevent ptr invalidation issues
* Remove next_in_quadrant
* Make review changes
* Rebuild next_in_quadrant for S6Export
* Fix formatting
* Constexpr where possible
* Increment network version and update replays
2021-01-23 07:36:46 +00:00
Duncan
3cc283adb2
Name MapFlashingFlags and split up guest/staff loop ( #13865 )
...
* Name MapFlashingFlags and split up guest/staff loop
* Use constexpr instead of macros
2021-01-23 06:45:14 +00:00
Duncan
fb274f55d5
Fix #13905 : Fix walking off end of array when saving ( #13913 )
...
Mistake made in refactor
2021-01-22 22:45:00 +00:00
ζeh Matt
73275b311b
Fix #13903 : ride exits not being recognized ( #13906 )
2021-01-22 22:08:54 +00:00
ζeh Matt
54578a0870
Merge pull request #13901 from ZehMatt/fix-replaysnapshot
...
Fix replay snapshots comparing states with different ticks
2021-01-22 20:15:33 +02:00
Duncan
1a11456f36
Rework remove floating to use EntityList ( #13895 )
2021-01-22 14:36:55 +00:00
ζeh Matt
bc20efb3df
Merge pull request #13822 from ZehMatt/refactor/fixedvector
...
Avoid some allocations by using a fixed size vector
2021-01-22 16:17:14 +02:00
Matt
6034cef358
Fix replay snapshots comparing states with different ticks
2021-01-22 15:35:16 +02:00
Michael Steenbeek
20f959c833
Use track_type_t in more places
2021-01-22 11:33:55 +01:00
Duncan
f80531070b
Implement EntityLists ( #13853 )
...
* Implement EntityLists
* Remove dead code
* Use alternative name for iterator
* Add comments
* Increment network version
* Update replays
* Remove further dead code
* Update replays again
2021-01-21 18:36:34 +00:00
Duncan
3321720d4a
Split up misc list access to be type specific ( #13870 )
...
* Split up misc list access to be type specific
Took the opertunity to use a fold expression to simplify the code
* Increment network version
2021-01-21 08:29:02 +00:00
Matt
f684ebd7d9
Allow the main game loop to scale the delta time
2021-01-20 23:13:02 +02:00
Ted John
19f0d8dfe9
Fix #13842 : News is imported incorrectly
2021-01-20 12:35:11 +01:00
Michał Janiszewski
9d666700f9
Merge pull request #13873 from janisozaur/memleak
...
Fix some memleaks
2021-01-20 07:32:32 +01:00
Michał Janiszewski
4a21676d17
Plug memory leak in DataSerialiser
2021-01-19 22:11:08 +01:00
Michał Janiszewski
4bcf68d84a
Use simple std::string assignment to plug memory leak
2021-01-19 22:10:15 +01:00
Duncan
354a131892
Use specific type for peep list access ( #13831 )
...
* Use specific type for peep list access
* Simplify calculation further
2021-01-19 17:57:22 +00:00
Michael Steenbeek
052306f992
Merge pull request #13854 from Gymnasiast/refactor/remove-regs
...
Remove remaining register usage
2021-01-18 22:12:03 +01:00
Gymnasiast
87ff851fd1
Rename flagsForSomething to remainingDistanceFlags
2021-01-18 22:11:28 +01:00
Basssiiie
813b111710
Fix #11912 : Update active palette on selection
2021-01-18 21:25:57 +01:00
Gymnasiast
9a3d9c512e
Move register definition to TestPaint
2021-01-17 22:14:55 +01:00
Gymnasiast
a2e84d161d
Remove last usage of registers
2021-01-17 20:11:50 +01:00
Gymnasiast
cb63b3356a
Replace another occurence of regs.ebx
2021-01-17 20:06:35 +01:00
Gymnasiast
98a9827ee8
Remove unused regs.cx
2021-01-17 20:06:35 +01:00
Gymnasiast
e4e4ca1122
Replace occurrence of regs.ax
2021-01-17 20:06:35 +01:00
Gymnasiast
2baf0f992f
Remove unused regs.dx
2021-01-17 20:06:35 +01:00
Gymnasiast
d817d595eb
Replace occurrence of regs.ax
2021-01-17 20:06:33 +01:00
Gymnasiast
d9fb4616a6
Replace 2 occurences of regs.eax
2021-01-17 20:06:05 +01:00
Gymnasiast
b24962546e
Replace an occurence of regs.eax
2021-01-17 20:06:05 +01:00
Gymnasiast
7e50d1bbc5
Integrate loc_6DB967
2021-01-17 20:06:05 +01:00
Gymnasiast
c200d7ab9c
Integrate loc_6DBE7F
2021-01-17 20:06:05 +01:00
Gymnasiast
60b0ba809a
Integrate loc_6DBE5E
2021-01-17 20:06:05 +01:00
Gymnasiast
39162b8f8e
Remove 2 occurrences of regs.ebx
2021-01-17 20:06:03 +01:00
Gymnasiast
9fb46e7fcc
Remove occurrence of regs.ebx
2021-01-17 20:05:31 +01:00
Gymnasiast
6561f1cb49
Remove occurrence of regs.ebx
2021-01-17 20:04:49 +01:00
Duncan
4ff5b9a89f
Reset Entity to 0 on removal ( #13835 )
...
This is to force any use after remove bugs to the surface
2021-01-16 15:48:39 +00:00
Michael Steenbeek
12edd610e6
Merge pull request #13841 from Gymnasiast/fix/13236
...
Fix #13236 : New ride type appears as new vehicle type in research
2021-01-15 22:38:28 +01:00
Michael Steenbeek
32d8dadc2b
Replace some leftover use of uint8_t for ride subtype
2021-01-15 19:35:06 +01:00
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
ζ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
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
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
ζ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
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
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
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
f7c6e04658
Close #13622 : Refactor SORT into strong enum
2020-12-23 18:02:39 -03: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
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
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
Richard Qian
6a095f39a5
Enable more cheat pieces for Splash Boats and River Rafts
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
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
be8736ffaa
Fix : #13509 [Plugin] Add ability to format strings
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
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
Gymnasiast
596aa71093
Create ObjectEntryDescriptor to properly handle mixed DAT and JSON
2020-12-02 17:17:25 +01: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