Implement 'missing objects' window
Basic implementation of 'bad objects' window
Add new object_load_error.c
Add object_load_error.c
Faffing about
String stuff
Stuff
Get window basically displaying
Proper col header for object
Display object types
Display file name and explanatory message
Probably about time I added myself to the dev list
Cleanup and comments
Make bad object window work with SC6
Fix whitespace, string IDs, flip core function sense
Fix spacing in string_ids.h
Fix string ID snafu
Fix HasNoInvalidObjects() sense
Attempt to refactor this to pass data properly
Move typedefs to separate header
Fix up signatures
Add park_load_result_types.h
Clean up includes and remnants of prev implementation
Split duplication into function, free invalid entries list on close
Use pointer for object_validity_result param
Fixup string IDs
Use LoadObject() directly
Use dependency injection, fix string termination
Xcode fix, make helper function static
Fix buffer overrun and memory leak
Use SDL for clipboard functionality
Fix function & variable declarations
Rework editor_read_s6() to use new park load result type
Update changelog for #5624
[ci skip]
Fix mem leak, function signature and whitespace
This fixes the following things:
- The objective was not available when using money (despite it being used on such scenarios in RCT1)
- The scenario editor set the 'partially finished flag' on every single ride
- The scenario editor did not check if there were five finished roller coasters
- When checking the goal, there was no check if the ride was a roller coaster
- When checking the goal, there was no check if the ride was one of the roller coasters to be completed
* Add ride groups
* Convert ride groups to C++
* Fix linking and crashes in Xcode
* Comment out .field syntax to make Visual Studio happy
* Fix alignment, fix changelog, cleanup
* Properly save ride group index in the ride object repository and bump its version
* Fix fallback behaviour when the ride entry is not available or not invented
* Fix include
* Rename RideGroup to RideGroupManager, add const, cleanup
* Break after finding matching ride group
Squash commit containing:
- 398d978 Setup server action logging for server admins in multiplayer
- 13330ae Added server action logging for using cheats in multiplayer
- b619019 Added server action logging for demolishing rides in multiplayer
- 93de752 Added server action logging for editing ride properties in multiplayer
- 8a3d932 Added server action logging for editing park properties in multiplayer
- c78b6e7 Moved duplicate chat and server logging code into new network methods
- c8f66bf Changed logging variable types to avoid deprecated conversion errors in CI builds
- 454e527 Added improved server action logging for using cheats in multiplayer
- 1194305 Moved server action logging code in game.c into a separate method to reduce clutter
- d59cd42 Added server action logging for add/edit/remove scenery in multiplayer
- c41ae0e Added server action logging for clients in multiplayer
- c383341 Removed unused variable to fix CI build error
- 2d1d8e3 Added server action logging for ride creation in multiplayer
Implement "Own all land" cheat into cheat window
Restore only valid peep spawn points
Code improvements
Update to use PEEP_SPAWN / PARK_ENTRANCE defines
A few strings have their {WINDOW_COLOUR_2} setting removed, since this
prevented strings from being market as inset. All uses of these strings
have been checked.
Removed display of raw cut height value.
Changed display of cut height in METRIC/SI from 1DP to 2DP to display odd raw heights with accurate value.
Changed display of cut height in IMPERIAL to 1DP to display odd raw heights with accurate value.
This commit changes the land rights button in the park window to be
disabled if there are no more land rights and construction rights for
sale. It also disables the individual land rights and construction
rights buttons in the land rights window itself if that specific type of
tile is no longer for sale.
This is implemented by introducing two new global variables called
gLandRemainingOwnershipSales and gLandRemainingConstructionSales. These
are updated by map_count_remaining_land_rights() to contain the number
of land rights and construction rights that remain for sale. This
function is called when a scenario is loaded and whenever the game
command to buy land rights or construction rights is invoked.
It also introduces three new tooltip strings that explain why the
buttons are disabled.
This commit also renamed a flag, and corrected the use of one. The
flags in question are WALL_SCENERY_BANNER, WALL_SCENERY_2_FLAG4, and
WALL_SCENERY_2_FLAG5.
These defines are used to calculate the edges of the widgets. They are
now ordered in the same way the widgets are listed for the pages.
This commit also adds some extra defines, to make it more easy to tweak
the sizes and padding of widgets.
Corrupt elements are now placed right under the selected element
Local tile-inspector variables now all use camelCaseNames
Removed unused string, and shifted string IDs
- Removes old (now unused) string
- Cleans up includes in tile_inspector.c
- Properly invalidating widgets upon changes made
- Invalidates tile when lift hill is changed
- Makes 'apply to all' works for lift hills
- Displaying ride infoormation for track pieces (type, ID, name)
- Allowing to change height of a track piece
- Allowing to set and upset wether a track piece is a lift hill
- Consistent text colouring for all labels and widgets
- Making use of the chain flag instead of magic numbers
- Fixed 'insert corrupt element' not working (button was not enabled
anymore)
- Formatting: ordered includes, consistent variable naming, comments for
closing switches
- Paths are now properly rotated, including flat ones
- Banners can not be rotated
- The X and Y coordinates can be changed with spinners
- Highligint selected tile while now hovering over viewport
- Added helper function for enabling and disabling widgets more easily
Changes the disable train lenght limit cheat to also disable the limit on the number of trains and renames it to 'disable vehicle limits'. Now any tracked ride can have up to 31 trains with 255 cars each. To reduce confusion, I also added a tooltip to the spinners on the vehicle tab.
This adds a checkbox to the interface settings panel to enable zooming around the cursor.
If disabled, which it is by default, vanilla RCT2 behaviour is retained.
Show an error if it can't select a track design rather than silently failing. Updating the list would require a file watcher on the tracks directory, and this edge case isn't particularly important at the moment.
This provides an option to set a limit on the number of windows that can
be open. Originally, the game had somewhere around 12, but was bumped up
to 64 for OpenRCT2. While this provides some value, this is for people who
prefer less windows at a time, and also for people with older computers.
The limit can be set anywhere between 8 and 64, (8 being chosen to still
preserve in-game toolbars that are counted as windows, and 64 to not
overshoot the maximum hard-coded value). This can be set in both options
and the in-game-console.
Add the corresponding entry inside CurrencyDescriptors array, and made
it
non-const to let the rate and other properties to change.
Also, a language string (STR_5880, en-GB & es-ES) has been added.
* Fix conflict with disable plant aging cheat
* Allow chain lift on any piece
* Keep chain toggled while building
* Ignore current chain lift state when cheat enabled
* Update string ids to one not already used
* Implement command for toggling cheat
* Allow chain on steep tracks when cheat is enabled
* Add checkbox for chain cheat
* Fix spacing
* Send cheat over network
* Change label for checkbox
* Replaced tabs with spaces