Commit graph

16739 commits

Author SHA1 Message Date
Michael Steenbeek
7c73e271ad
Name num_sheltered_sections flags 2021-04-03 22:17:57 +02:00
Gymnasiast
f5ec127eaf
Fix #14409: NPE when demolishing banner 2021-04-03 22:09:24 +02:00
Gymnasiast
943e89d5a6
Use BannerElement instead of TileElement 2021-04-03 22:07:11 +02:00
Ted John
ea961aed93
Fix #14428: No text visible in in-game console window (#14429) 2021-04-03 00:12:30 +01:00
Michael Steenbeek
0e327c86e4
Fix ratings calculation taking 30 minutes 2021-04-02 22:57:36 +02:00
A.N
4d3328c7bb
Add preprocessor directives to stop unused variable/function warnings. (#14422) 2021-04-02 14:41:11 +02:00
Duncan
b65f12f1cf
Use correct null value (#14421)
* Use correct null value

* Increment network version
2021-04-02 13:13:33 +01:00
adam-bloom
e45d002562 Remove unnecessary verify_app function
fixup_bundle performs bundle verification, so this was a duplicate
2021-04-01 22:37:09 -06:00
adam-bloom
dc0d77a951 include shaders (required for OpenGL) 2021-04-01 22:00:04 -06:00
adam-bloom
77ea64a5ef function for downloading object/sequence/dependency zips 2021-04-01 22:00:04 -06:00
adam-bloom
06e0e3db51 add MACOS_BUNDLE cmake option to build self-contained app bundle 2021-04-01 22:00:04 -06:00
Michael Steenbeek
7344b7fbfd
Use 16-bit ride_id_t thoughout and raise RIDE_ID_NULL (#14411)
* Replace RIDE_ENTRY_INDEX_NULL with OBJECT_ENTRY_INDEX_NULL

Ride entries are objects like any other, so there is little point having separate constants.

* Use ride_id_t in many more places

* Change RIDE_ID_NULL to 0xFFFF

* Increment network version

* Update replays

Co-authored-by: duncanspumpkin <duncans_pumpkin@hotmail.co.uk>
2021-04-01 16:02:57 +01:00
Michael Steenbeek
cbefc4fe38
Fix #14412: NPE in vehicle_create_car() 2021-04-01 11:26:14 +02:00
Michael Steenbeek
9ee3c81768
Merge pull request #14397 from Gymnasiast/refactor/hardcoded-terrain-constants
Remove hardcoded terrain style constants from RCT1 and MapGen
2021-03-31 20:18:12 +02:00
Gymnasiast
d7809c26f5
Use string_view instead of const char* 2021-03-31 19:22:09 +02:00
Gymnasiast
b627dbd3a4
Apply review requests 2021-03-31 19:15:33 +02:00
Gymnasiast
d7d402747e
Add Vietnamese language 2021-03-31 14:26:31 +02:00
Tulio Leao
465bcf768c
Merge pull request #14394 from tupaschoal/coords1
Use more ScreenCoordsXY on openrct2-ui
2021-03-30 19:49:51 -03:00
Michael Steenbeek
4014fbe861
Add missing call to gfx_unload_csg() 2021-03-30 22:49:00 +02:00
Tulio Leao
7e78061e16 Use ScreenCoordsXY on InGameConsole 2021-03-29 09:34:11 -03:00
Tulio Leao
bb8c275df6 Remove raw coords gfx_fill_rect_inset overload 2021-03-29 09:34:11 -03:00
Tulio Leao
08e182fba2 Use ScreenCoordsXY on Graph methods 2021-03-29 09:34:11 -03:00
Tulio Leao
eab297f9ff Use ScreenCoordsXY on Graph::Draw 2021-03-29 09:34:11 -03:00
Tulio Leao
d34dc3c924 Increase usage of ScreenRect' gfx_fill_rect_inset on Finances 2021-03-29 09:34:09 -03:00
Tulio Leao
090aadb647 Use ScreenCoordsXY on window_guest_stats_bars_paint 2021-03-29 09:31:05 -03:00
Tulio Leao
aa88c8d181 Increase usage of gfx_fill_rect_inset that uses ScreenRect 2021-03-29 09:31:05 -03:00
Tulio Leao
d5b5c10e80 Use ScreenCoordsXY for window_game_bottom_toolbar_draw_park_rating 2021-03-29 09:31:04 -03:00
Tulio Leao
2f608c32ab Use ScreenCoordsXY for window_ride_maintenance_draw_bar 2021-03-29 09:31:04 -03:00
Michał Janiszewski
ed40badcb1
Initialise variable to fix Launchpad ppc64el builds
`src/openrct2-ui/windows/TopToolbar.cpp:2112:13: error: ‘side’ may be used uninitialized in this function [-Werror=maybe-uninitialized]`
2021-03-29 09:52:52 +02:00
Duncan
ee03ab71d7
Reorganise EntityImport for S4 to follow S6/park style (#14398) 2021-03-28 21:35:53 +01:00
Gymnasiast
b3bbdcbfd5
Remove hardcoded terrain style constants from RCT1 and MapGen 2021-03-27 17:34:10 +01:00
Gymnasiast
22ba7a2bc1
Fix drawing; fix formatting 2021-03-27 15:56:01 +01:00
calvin
6342fd3d9a
Display track file path in track selector 2021-03-27 15:11:08 +01:00
Geoff B
6c8493cb69
Close #14253: Replace font size tokens with adjusted DrawText calls 2021-03-27 14:40:17 +01:00
Michael Steenbeek
713410ab6c
Apply changed strings from the new-save-format branch 2021-03-27 14:31:13 +01:00
Tulio Leao
2d1557e48e
Merge pull request #13444 from tupaschoal/extract-ifdefed-functions
Extract ifdefed functions
2021-03-27 10:00:01 -03:00
Duncan
619b2afc15
Compute checksum by entity type (#14383)
* Compute checksum by entity type

* Copy only the entity size

* Update replays and network version
2021-03-27 09:36:41 +00:00
Tulio Leao
e23eaa164b Extract RequireNewWindow to Platform 2021-03-26 23:17:01 -03:00
Tulio Leao
62fc4c8034 Extract ResolveCasing to Platform 2021-03-26 23:17:01 -03:00
Tulio Leao
c7ae064a4c Extract ShouldIgnoreCase to Platform 2021-03-26 23:17:01 -03:00
Tulio Leao
9a071aef76 Extract GetAbsolutePath to Platform 2021-03-26 23:17:01 -03:00
Duncan
177b5e1b08
Add plugin hook for guest generation (#14107)
* Add plugin hook for guest generation

* Update api version and add ts entry
2021-03-26 05:49:24 +00:00
Duncan
a4a08ea8b4
Reorg entity import to follow export design (#14177)
* Add CreateEntityAt

* Reorg entity import to follow export design

* Move definitions just because gcc refuses to fix bugs

* Use CreateEntityAt

* Fix freeid allocation

* Streamline freeId reset and add statics
2021-03-26 05:48:38 +00:00
Tulio Leao
f15bbd220a Extract IsPathSeparator to Platform 2021-03-25 23:45:01 -03:00
Duncan
0a47d2157a
Use more specific types where appropriate (#14388)
It takes marginally more time to get a Peep than a Guest/Staff so may as well go straight to the correct type
2021-03-25 08:44:25 +00:00
Duncan
1be7457e30
Use entity list rather than MAX_ENTITIES loop (#14384)
* Use entity list rather than MAX_ENTITIES loop

* Use guest for variable names
2021-03-25 08:08:26 +00:00
TELK
040a3eb144
Fix part of #7489: Shortcuts work incorrectly for vertical tracks 2021-03-24 20:32:03 +01:00
Michael Steenbeek
19b1958822
Merge pull request #14332 from DKarandikar/develop
Close #13749: Move Banner window to new framework
2021-03-24 20:30:42 +01:00
Duncan
977d05ba29
Entity type5: Remove peep assigned type (#14380)
* Remove users of AssignedPeepType

* Remove AssignedPeepType

Field no longer required due to changes to EntityType

* Move enum to the RCT12 header

* Increment network version

* Update replays
2021-03-24 08:54:05 +00:00
Michael Steenbeek
a5a63f839a
Allow passing ImageId into gfx_draw_sprite() 2021-03-23 11:58:09 +01:00
Duncan
ccfa22c230
Entity type4: Remove MiscEntityType and add FountainType (#14344)
* Move jumpingfountain type out of misc entity type

* Remove SubType for MiscEntities as it is no longer required

* Update replays

* Apply review comments

* Increment network version
2021-03-22 21:24:50 +00:00
Daniel Karandikar
d4efbdf531 Refactor InitTileElement
Break loop when going to go outside of Tile
2021-03-22 19:23:36 +00:00
Daniel Karandikar
5ef750a879 Tidy up BannerWindow::Initialise 2021-03-22 19:23:34 +00:00
Daniel Karandikar
4c1d35478c Tidy Window.cpp 2021-03-22 19:23:31 +00:00
Daniel Karandikar
1551389bf5 camelCase for local vars 2021-03-22 19:23:28 +00:00
Daniel Karandikar
248d6a0683 Prepend _ to private member fields 2021-03-22 19:23:20 +00:00
Michael Steenbeek
b275e7b82e
Fix #14294: NPE in map_animation_invalidate_wall_door() 2021-03-20 17:09:37 +01:00
Michael Steenbeek
9132c9ad8d
Fix #14153: NPE in Guest::UpdateRideLeaveVehicle() 2021-03-20 17:09:19 +01:00
Michael Steenbeek
d1267a276f
Merge pull request #14355 from duncanspumpkin/fix_14353
Fix #14353. Provide a buffer for text input
2021-03-20 14:58:02 +01:00
Michael Steenbeek
430711a33b
Cache HasFilePicker() value in UiContext 2021-03-20 14:51:15 +01:00
Cory Sanin
f1cd58c292
Fix #14330: join_server uses config default_port 2021-03-20 14:09:47 +01:00
duncanspumpkin
820668d0aa Use unsafe strlen for platforms without strlen_s 2021-03-20 07:27:23 +00:00
duncanspumpkin
ee575d5b8c Use std::vector to prevent violations of std string 2021-03-20 07:22:00 +00:00
duncanspumpkin
07b2945c5b Fix #14353. Provide a buffer for text input 2021-03-19 18:25:14 +00:00
Michael Steenbeek
a018787c91
Fix #14295: Assertion hit in Audio.cpp 2021-03-19 11:58:50 +01:00
Michael Steenbeek
2b9a3424b0
Fix #14347: Crash when inserting a tile element without room 2021-03-18 23:28:43 +01:00
Michael Steenbeek
850e7431c3
Merge pull request #14328 from Gymnasiast/fix/14315
Fix #14315: Crash when renaming APVC in Korean
2021-03-18 22:49:13 +01:00
Duncanspumpkin
0957542503
Implement C++ solution to truncate UTF8 strings 2021-03-18 22:14:12 +01:00
Maximilian Bottin
6f28914f61
Fix #14296: Allow early scenario completion in multiplayer 2021-03-18 20:30:11 +01:00
Michael Steenbeek
e89c37e7ae
Fix #11829: Glitches when using mismatched csg1/csg1i 2021-03-17 13:40:45 +01:00
Duncan
4d152d97d2
Use entity list size rather than distance (#14343)
After the refactors with the entity lists we no longer require to walk the whole entity list to get the number of entries.
2021-03-17 08:55:10 +00:00
Duncan
129ef12d6d
Refactor paint entity (#14342) 2021-03-17 08:35:39 +00:00
Duncan
df7a284822
Entity type 2: Remove sprite_identifier (#14334)
* Start changing the underlying type

* Further work

* Complete refactor

* Further cleanup

* Remove pointless check

* Increment network and plugin versions

* Add defaults

* Further defaults

* Fix test paint

* Update replays
2021-03-17 08:04:41 +00:00
Duncan
6ec379cd0e
Split Entity Lists by Entity type (#14326)
* Make initial changes to add entity type

* Make further corrections

* Revert header changes

* Fix mistakes
2021-03-16 11:18:06 +00:00
Daniel Karandikar
1229ce6b22 Refactor Banner to use new Window framework
Also tidy up a couple of bits of duplicated code
Pulled out into CreateViewport method and tileElement member
2021-03-15 22:59:19 +00:00
Michael Steenbeek
96524e2b4a
Convert Land window to class 2021-03-15 23:08:00 +01:00
Gymnasiast
645685de18
Fix #14315: Crash when renaming APVC in Korean 2021-03-15 21:27:13 +01:00
Michael Steenbeek
706fdae588
Fix #13894: Block brakes do not animate 2021-03-15 20:37:08 +01:00
Duncan
5474194905
Implement train view and remove linked_list_index (#13956)
* Make train manager view

* Remove linked list index field

* Remove merge mistake

* Fix further rebase errors

* Rename and add comments

* Update replays

* Fix Xcode project

* Increment network version

Co-authored-by: Michael Steenbeek <m.o.steenbeek@gmail.com>
2021-03-15 08:13:00 +00:00
Tulio Leao
f372117939 Extract GetLastModified to Platform 2021-03-14 09:36:44 -03:00
manatails
4fe5b1dc79
Add "Vandals stopped" stat for security guards (#14071)
* Add a stat for security guards: Vandals stopped

* Update src/openrct2-ui/windows/Staff.cpp

Co-authored-by: Tulio Leao <tupaschoal@gmail.com>

* Update src/openrct2/peep/Guest.cpp

Co-authored-by: Tulio Leao <tupaschoal@gmail.com>

* No need to update screenCoords at the last line

Co-authored-by: Michael Steenbeek <m.o.steenbeek@gmail.com>

* Add changelog entry and bump network version

* Update to new UI code

Co-authored-by: Tulio Leao <tupaschoal@gmail.com>
Co-authored-by: Michael Steenbeek <m.o.steenbeek@gmail.com>
2021-03-14 09:18:35 -03:00
frutiemax
8acdcca712
Part of #12098: Use ScreenRect on gfx_filter_rect in Error.cpp (#14288) 2021-03-13 22:03:13 -03:00
frutiemax
cd9873a78d
Use ScreenLine on gfx_draw_line_software 2021-03-13 16:52:58 +01:00
Michael Steenbeek
85c59b88be
Convert New Campaign window to a class 2021-03-13 16:51:54 +01:00
Ted John
7793f4c548
Update backtrace token for 0.3.4 2021-03-13 14:11:58 +01:00
Gymnasiast
3f65f282d7
Release v0.3.3
- Feature: [#12110] Add Hybrid Coaster (Rocky Mountain Construction I-Box) track type.
- Feature: [#12999] .sea (RCT Classic) scenarios are now listed in the “New Scenario” dialog.
- Feature: [#13000] objective_options command for console.
- Feature: [#13096] Add Esperanto translation.
- Feature: [#13164] Add 'Objective options' to Cheats menu.
- Change: [#9568] Change lift sounds of Reverser Roller Coaster and Compact Inverted Coaster to better fitting ones.
- Change: [#13160] The lay-out of the Park Cheats tab has been improved.
- Fix: [#1324] Last track piece map selection still visible when placing ride entrance or exit (original bug).
- Fix: [#3200] Close Construction window upon selecting vehicle page.
- Fix: [#4022] Fix Mac cursor offset on launch
- Fix: [#4041] Garbled park option on scenario editor with custom theme.
- Fix: [#4865] Offer an option to disable inhibiting the monitor power.
- Fix: [#5178] Lighting effects cannot be disabled in software mode
- Fix: [#5904] Empty errors on tile inspector base height change.
- Fix: [#6086] Cannot install existing track design with another name.
- Fix: [#6614, #8623] Colours are distorted when using OpenGL with Intel integrated graphics drivers.
- Fix: [#7443] Construction arrows pulse at irregular intervals.
- Fix: [#7518] Water isn't cut down by view clipping tool.
- Fix: [#7748] Tooltips would not timeout for normal UI elements.
- Fix: [#8015] RCT2 files are not found when put into the OpenRCT2 folder.
- Fix: [#8957] Error title missing when building with insufficient funds
- Fix: [#10186] Placing multiple saved rides ignores design name (original bug).
- Fix: [#12368] Desync due to ghost station pieces affecting changing ride settings.
- Fix: [#12940] Windows cause issues with snow drawing.
- Fix: [#13019] Simulated trains sometimes open construction window when they crash.
- Fix: [#13021] Mowed grass and weeds don't show up in extra zoom levels.
- Fix: [#13024] Console cursor does not correctly render at current cursor position.
- Fix: [#13029] Not all Junior Roller Coaster pieces are shown when "Show all track pieces" cheat is enabled.
- Fix: [#13044] Rides in RCT1 saves all have "0 customers per hour".
- Fix: [#13074] Entrance and exit ghosts for mazes not being removed.
- Fix: [#13083] Dialog for renaming conflicting track design crops text out.
- Fix: [#13097] Missing direction arrow for stations
- Fix: [#13098] UI buttons for entrance and exit don't toggle according to them being built.
- Fix: [#13098] Maze can still be constructed while placing entrance and exit (original bug).
- Fix: [#13118] Closing construction window resets ride viewport.
- Fix: [#13129] Missing error message when waiting for train to leave station on the ride measurements graph.
- Fix: [#13138] Fix logical sorting of list windows.
- Fix: [#13158] Cursors are drawn incorrectly in text input fields.
- Fix: [#13222] Vehicle collision causes negative number of passengers (original bug).
- Fix: [#13226, #7280] No error is shown when attempting to load a corrupted save.
- Fix: [#13266] Plugin API: Deleting key of sharedStorage not working.
- Fix: [#13278] Desync caused by ghost tiles changing the ride mode.
- Fix: [#13289] Litter and vomit sometimes not loading with RCT1 saved game or scenario
- Fix: [#13292] Impossible excitement rating requirements with finish building 5 coasters goal
- Improved: [#13023] Made add_news_item console command last argument, assoc, optional.
- Improved: [#13098] Improvements to the maze construction window user interface
- Improved: [#13125] Selecting the RCT2 files now uses localised dialogs.
2021-03-13 12:17:05 +01:00
Michael Steenbeek
96a34318fe
Merge pull request #14260 from IntelOrca/fix/14201-research-finish-assert
Fix #14201: Assert in research_finish_item for invalid ride type
2021-03-12 23:32:23 +01:00
Michael Steenbeek
1b5c7dc1c7
Fix inverted condition 2021-03-12 23:05:30 +01:00
Ted John
87dc006b8c Apply code review suggestions 2021-03-12 21:27:23 +00:00
Ted John
a9584ad797
Fix #14266: [Plugin] {STRINGID} format is not applied 2021-03-12 21:08:56 +01:00
Michael Steenbeek
f0dc28e9fc
Update objects to v1.0.21 2021-03-12 11:04:04 +01:00
Michael Steenbeek
bc2df33b0a
Fix #14225: Desync when “allow early scenario completion” is enabled 2021-03-08 20:16:21 +01:00
Ted John
b1a54fa7ba
Fix #14264: [Plugin] Cannot modify the coordinate / size of the viewport 2021-03-08 19:52:26 +01:00
Michael Steenbeek
55fea26a96
Fix #14172: Assertion hit in window_tile_inspector_swap_elements() 2021-03-07 14:53:44 +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
01ddea5fab
Fix #14198: Crash when creating new folder 2021-03-06 20:07:18 +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
Michael Steenbeek
3b94132bab
Merge pull request #14219 from Gymnasiast/fix/14102
Fix #14102: NPE in window_tile_inspector_invalidate()
2021-03-03 22:48:16 +01:00
Gymnasiast
66a5e28832
Avoid referencing null tile elements or derivations 2021-03-03 22:06:16 +01: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
Michael Steenbeek
0b73781df8
Fix #14216: Second line of guest thoughts is set in wrong font 2021-03-03 16:00:03 +01:00
Gymnasiast
52d0689484
Add null checks to all other scenery object usages 2021-03-03 10:25:35 +01:00
Gymnasiast
e332c2a691
Fix #14102: NPE in window_tile_inspector_invalidate() 2021-03-03 10:21:49 +01:00
Gymnasiast
229f374672
Improve positioning of mechanic status 2021-03-02 23:19:00 +01:00
Gymnasiast
50da55eaf3
Fix #14212: Multiline news messages are shown incorrectly 2021-03-02 22:48:33 +01:00
Gymnasiast
30edc834ee
Fix #14211: 'Mechanic X heading for ride' runs out of window 2021-03-02 22:37:15 +01:00
TELK
25bbbef7d1 Fix code formatting 2021-03-03 00:02:46 +09:00
Ted John
9b43ace649
Fix ui.showTextInput performance issue (#14210)
Over 2 GiB of memory was being allocated when calling ui.showTextInput. Restrict max length to 4 KiB.
2021-03-01 22:09:51 -03:00
Michael Steenbeek
c98746c910
Fix #14206: Text runs out of Ride window
For some reason, the window used `gfx_draw_text_centred_wrapped()` before.
2021-03-01 20:31:15 +01:00
Ted John
d3e54bb579
Merge pull request #14191 from IntelOrca/fix/14190-shortcut-crash
Fix #14190: Game crash likely related to plug-in hotkeys
Fix #14194: Pressing WASD in text box moves main viewport, too
Fix #14195: Binding (NumPad) Enter to send message closes the chat
2021-03-01 14:13:45 +00: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
d1057d66fc fix mingw builds 2021-02-28 15:48:30 -07: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
Adam
81fe5ad2cd
Remove unused const: MusicStyleNames 2021-02-28 22:57:23 +01:00
Gymnasiast
a0523339d3
Apply review request 2021-02-28 21:24:17 +01:00
Ted John
083d22adf2 Fix #14195: Binding (NumPad) Enter to send message closes the chat 2021-02-28 14:08:16 +00:00
Ted John
789b04b4aa Fix #14194: Pressing WASD in text box moves main viewport, too 2021-02-28 14:07:56 +00:00
Ted John
17a29dfe87 Fix #14190: Game crash likely related to plug-in hotkeys
Do not cache references to RegisteredShortcut as they can be invalidated when new shortcuts are registered / removed.
Use a map to improve query performance of shortcut by ID.
Store a separate list of strings for the map to use as a key.
2021-02-28 01:13:43 +00:00
Gymnasiast
d6971fa79e
Fix rebase errors 2021-02-28 00:35:38 +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
314faa69ca Save user shortcuts after removing a binding 2021-02-27 15:51:26 +00:00
Ted John
1ee72ffd21 Fix #14184: Right and down arrow swapped
Incorrect order of legacy shortcut IDs.
2021-02-27 15:51:05 +00: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
Ted John
e000f06442 Remove holdable flag from spinner widget 2021-02-25 22:30:35 +00:00
Gymnasiast
b1ab20ec27
Replace loose flag checking with helper function 2021-02-25 23:04:40 +01:00
Ted John
f7650fdfbc Fix CI failure 2021-02-25 18:47:54 +00: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
d64bd60278 Fix CI errors 2021-02-24 22:54:53 +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
081c1895ce Add box and well APIs 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
Ted John
668ea01548
Update src/openrct2-ui/windows/ShortcutKeys.cpp
Co-authored-by: Aaron van Geffen <aaron@aaronweb.net>
2021-02-24 16:57:19 +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
Ted John
5ba3fdf452 Fix #14161: ShortcutDesc.bindings does not work 2021-02-23 22:19:46 +00:00
Ted John
52dffb83c2 Fix #14160: Game crashs when registering shortcuts 2021-02-23 22:18:00 +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
Ted John
817edff4bd Fix #14149: Numpad shortcut keys are not loaded correctly 2021-02-23 20:35:24 +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
Ted John
440c0f447f
Fix #14140: Some shortcut keys are not working 2021-02-21 21:44:53 +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
ed29c0a37b Replace std::printf with Console::* 2021-02-21 03:14:20 +00:00
Ted John
e383b6f6f7 Move zoom and rotation to view tab 2021-02-21 03:14:20 +00:00
Ted John
b3f6437092 Apply suggestions from code review 2021-02-21 03:14:19 +00:00
Ted John
cacfb8be07 Refactor dead key handling 2021-02-21 03:14:19 +00:00
Gymnasiast
d5eb1cc036 Fix dead key handling
This fixes deadkey handling on at least US International on Linux.
2021-02-21 03:14:19 +00:00
Ted John
2b14fe9d7f Update shortcut listings 2021-02-21 03:14:19 +00:00
Ted John
ff86ebbfe5 Localise shortcut strings 2021-02-21 03:14:19 +00:00
Ted John
acfda711f5 Use std::string_view without reference 2021-02-21 03:14:19 +00:00
Ted John
59b4be6a12 Move InputManager to UiContext 2021-02-21 03:14:19 +00:00
Ted John
80662d72a4 Cache view scroll shortcuts 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
fa1a374a04 Scale binding column in window 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
eda33fea20 Fix view scroll shortcuts 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
f2f658bf28 Refactor some code into more files 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
18c3587d63 Rename shortcut IDs and order groups 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
7b00f9d96d Add tabs to keyboard shortcut window 2021-02-21 03:14:18 +00:00
Ted John
f69c1576b3 Refactor shortcut windows to class 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
900f3cd92b Fix gcc / clang builds 2021-02-21 03:14:17 +00:00
Ted John
afc548c5a7 Add plugin API for shortcuts 2021-02-21 03:14:13 +00:00
Ted John
9964df5335 Implement gamepad support 2021-02-21 03:13:28 +00:00
Ted John
e6b6403024 Refactor and fix shortcut 2021-02-21 03:13:28 +00:00
Ted John
ea975f88fc Implement more InputManager 2021-02-21 03:13:28 +00:00
Ted John
c8f31dea7f Process keyboard input events 2021-02-21 03:13:28 +00:00
Ted John
3339089235 Add more shortcuts 2021-02-21 03:13:28 +00:00
Ted John
f009b9a804 Only handle release mouse buttons 2021-02-21 03:13:28 +00:00
Ted John
ccae533978 Add input manager 2021-02-21 03:13:27 +00:00
Ted John
b1eb975529 Re-add show change dialog 2021-02-21 03:13:27 +00:00
Ted John
e5f263a0fc Get new manager showing in window 2021-02-21 03:13:27 +00:00
Ted John
28aead5cb5 Start work on new shortcut engine 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
e11304f1df
Fix #14111, #14112: Strange behaviour when selecting a new scenario 2021-02-19 09:37:06 +01: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
785fb153db
Merge pull request #14088 from IntelOrca/improve-network-messages
Improve network messages and logging
2021-02-18 13:36:44 +00:00
Geoff B
0532ebab7a
Fix #14095: Holding down [-][+] buttons does not change number of circuits 2021-02-17 08:51:07 +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
Michael Steenbeek
962ef0c02b
Fix #14066: NPE in window_top_toolbar_invalidate() 2021-02-12 18:48:38 +01:00
Michael Steenbeek
61536eb1f6
Fix #14073: NPE in InputUpdateTooltip 2021-02-12 18:36:58 +01: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
Ted John
1cb3330779 Fix #14042: Park Crashes whilst saving 2021-02-09 23:51:31 +00:00
Michał Janiszewski
41d09a2691
Merge pull request #14028 from janisozaur/ccache
Add ccache action to GitHub Actions
2021-02-09 23:12:43 +01:00
Michael Steenbeek
397512f4d3
Fix #14032: NPE in window_tile_inspector_scrollpaint() 2021-02-09 23:02:31 +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
Michał Janiszewski
ec538e5e75 Extend Android, AppImage builds with ccache support 2021-02-09 20:26:28 +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
ζeh Matt
3e675cdf04
Merge pull request #14023 from ZehMatt/refactor/peep-pickup
Move peep pickup test into Peep::CanBePickedUp
2021-02-09 01:30:11 +02:00
Matt
7d517caced
Move peep pickup test into Peep::CanBePickedUp 2021-02-09 00:31:29 +02:00
Michael Steenbeek
7862591a43
Fix #14012: 'Finish 5 coasters' goal listed incorrectly in selector 2021-02-08 23:29:59 +01:00
Ted John
17450c236e Increment plugin API and update changelog 2021-02-08 22:28:59 +00:00
Ted John
099a087b18 Fix CI build errors 2021-02-08 22:27:28 +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
78df831f29 Implement loading of parks 2021-02-08 22:27:28 +00:00
Ted John
d2a97ab43c Implement scenario select window 2021-02-08 22:27:28 +00:00
Ted John
8cfdbd871d Improve title sequence API 2021-02-08 22:27:28 +00:00
Ted John
fcb5f51c4a Allow saving of commands 2021-02-08 22:27:28 +00:00
Ted John
f99c57e11d Implement getting commands 2021-02-08 22:27:28 +00:00
Ted John
3ed221f128 Add APIs for loading a saved game and adding a park 2021-02-08 22:27:28 +00:00
Ted John
41c7b04ab2 Add parks to title sequence API 2021-02-08 22:27:28 +00:00
Ted John
55ebebb869 Add title sequence API 2021-02-08 22:27:27 +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
e5b412fb5f Fix #14017: Text input window errors 2021-02-08 17:45:08 +00: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
Michael Steenbeek
c0ab9e8a3b
Merge pull request #13994 from ZehMatt/refactor/tileelementview-3
Make tile element insertion type explicit
2021-02-05 13:46:58 +01:00
Matt
1aa75f04b7
Add templated version for tile element insertion and cleanup code 2021-02-05 12:22:34 +02:00
ζeh Matt
2a06043860
Merge pull request #13996 from ZehMatt/fix-13992
Fix #13992: Do not show empty groups in guest list
2021-02-04 20:31:15 +02:00
Matt
41c6c0bee3
Support casting back to TileElement 2021-02-04 20:29:32 +02:00
Matt
0427ad2914
Fix #13992: Do not show empty groups in guest list 2021-02-04 19:30:44 +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
Ted John
2fdf91874c Implement centred labels 2021-01-29 17:50:32 +00:00
Ted John
180a41686c Implement transparent windows for plugins 2021-01-29 17:50:27 +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
2fcaed8165 Allow more fields to be optional 2021-01-27 00:28:59 +00:00
Ted John
136783270f Fix initial value for showTextInput 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
c1a1f8f639 Fix #13953: invalid-read in StaffListWindow::RefreshList 2021-01-26 00:17:34 +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
85df2c6854
Refactor guestlist (#13899)
* Refactor GuestList groups to use more standard functions

* Remove index

* Apply review comments
2021-01-22 18:02:22 +00: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
Duncan
8d25e4ccd9
Split closest peep calculation into Staff and Guest (#13880) 2021-01-20 14:21:22 +01: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
ζeh Matt
40a23db14b
Fix #13871: Crash on banner window invalidation 2021-01-19 22:44:22 +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