Commit Graph

242 Commits

Author SHA1 Message Date
Michiel Bos 3fdab8e7d9 Added icon to Cheats button to indicate clearance checks are disabled 2020-05-30 17:10:08 +02:00
Gymnasiast 9a9ab47856
Remove Twitch from the rest of the code 2020-05-28 09:28:32 +02:00
Ted John be0e4a2869 Implement custom tools 2020-05-02 11:08:43 +01:00
Tulio Leao d0704baab2 Make window_dropdown_show_text() use ScreenCoordsXY 2020-05-01 15:58:36 -03:00
Tulio Leao 0c51528425 Use ScreenCoordsXY on windows/TopToolbar.cpp 2020-05-01 12:52:07 -03:00
Ted John c67962577a Rename __ENABLE_SCRIPTING__ to ENABLE_SCRIPTING 2020-04-26 14:35:08 +01:00
Ted John 7f9ff121b1 Fix rebase 2020-04-26 14:35:07 +01:00
Ted John e1c08defc8 Remove use of std::variant 2020-04-26 14:35:07 +01:00
Ted John 83fe0cf5c5 Implement strings for GameAction errors 2020-04-26 14:35:05 +01:00
Ted John bac91cd563 Allow scripting to be compile-disabled 2020-04-26 14:35:03 +01:00
Ted John 639faa2085 Fix GCC issues 2020-04-26 14:35:03 +01:00
Ted John 4b95a3a9d0 Implement custom menu items 2020-04-26 14:35:01 +01:00
Michał Janiszewski c4b6897635 Address possible nullptr dereferences 2020-04-21 13:31:01 +02:00
Tulio Leao 935cfe90fc
Use named casts on openrct2-ui/windows (#11136) 2020-04-18 13:32:48 +02:00
Olivier Wervers 506b06bd73
Fix #11072: Land and water tools work out of bounds (#11179)
Tool tried to act out of bounds, where it shouldn't do anything
2020-04-17 19:34:32 -03:00
Ted John d34dec9c27 Create ZoomLevel struct to add two new zoom levels 2020-03-23 15:54:03 +00:00
Michael Steenbeek c519512cfe
Create ObjectEntryIndex (#10980) 2020-03-20 19:28:39 +01:00
Gymnasiast 459a0318cf
Implement review requests 2020-03-18 16:22:08 +01:00
Gymnasiast 5ba5daca42
Make ScenerySelection implementation a bit cleaner 2020-03-15 13:19:26 +01:00
Gymnasiast 70e287b076
Clean up scenery handling 2020-03-15 12:15:12 +01:00
Michael Steenbeek be13c1fc87
Refactor more TileCoords 2020-03-07 21:07:18 +01:00
Michael Steenbeek 4f86d0115c
Merge pull request #10866 from Gymnasiast/refactor/more-tile-element-prep
Refactor/more tile element prep
2020-03-06 09:25:32 +01:00
Gymnasiast 57a40c0657
Extend PathElement 2020-03-04 21:57:42 +01:00
Tulio Leao 724a6d4dcf Make rct_window use ScreenCoordsXY 2020-03-02 20:51:01 -03:00
Tulio Leao 9bcd20e0e6 Prefer const ref to send ScreenCoordsXY over 2020-02-29 08:25:48 -03:00
Aaron van Geffen aa6d6efe99 Refactor common parts of branched code.
Change shifts to COORDS_XY_STEP multiplication.
2020-02-22 17:25:29 +01:00
Aaron van Geffen 2528e94b48 Introduce low, medium, and high density buttons to the scatter tool.
Change window lay-out to more closely resemble others by introducing
density buttons, along with new sprites.

The amount of elements varies by density as follows:
* Low: number of elements equal to tool size
* Medium: twice as many elements as the tool size
* High: three times as many elements as the tool size.

Remove extraneous 'retry' clause.
2020-02-22 17:25:19 +01:00
Anton Scharnowski e6e48363de Introduce Scenery-Scatter Tool Window. 2020-02-22 16:18:19 +01:00
Michael Steenbeek f41f878581
Replace some usages of LocationXY(Z)16 (#10699) 2020-02-18 22:42:38 +01:00
Michael Steenbeek dbb89b96fb
Clean up scenery window variables (#10697) 2020-02-13 21:24:37 +01:00
Duncan c74339fed9 Fix #10477. Fix upper max height limit being very low for large scenery
Mistake made while improving mouse control when zoomed out caused the upper limit for multi tile scenery to be limited by the sum of all clearance z values instead of the greatest clearance z value.
2019-12-31 09:15:46 +01:00
Tulio Leao 109a90269c Prefer setNull/isNull on TopToolbar over LOCATION_NULL 2019-12-27 09:52:31 -03:00
Tulio Leao 05ef277cbd Remove LocationXY usage on openrct2-ui\windows\TopToolbar.cpp 2019-12-27 09:22:51 -03:00
Gymnasiast 62fcbb07ca
Rename methods to GetBaseZ/GetClearanceZ 2019-12-23 20:08:37 +01:00
Gymnasiast 7d11858dbe
Create getter for GetBaseHeight()/GetClearanceHeight() 2019-12-23 20:05:24 +01:00
Duncan 228205a199 Fix crash in dev builds due to sign issues (#10405) 2019-12-21 14:08:57 +01:00
Tulio Leao 7c75db2b2d Make map_get_surface_element_at only accept Coords objects 2019-12-18 23:46:50 -03:00
Tulio Leao 6b06b2c578 Use ScreenCoordsXY for Mouse Drag storage (#10380) 2019-12-17 18:38:20 +01:00
Tulio Leao accb4ea691 Use CoordsXY on TopToolbar and TrackDesignPlace rotations 2019-12-04 22:07:11 -03:00
Tulio Leao 1532ee2b23 Create CoordsXY::ToTileStart() and CoordsXY::ToTileCentre() 2019-11-30 16:47:23 +01:00
Tulio Leao 4537c061d9 Prefer std::optional over LOCATION_NULL on Viewport (#10297) 2019-11-29 17:17:01 +01:00
Tulio Leao 47935288d0 Remove raw coordinates overload of get_map_coordinates_from_pos 2019-11-25 17:45:02 -03:00
Tulio Leao 7f74e01669
Add braces to fix return on null Coords 2019-11-21 09:22:09 -03:00
Tulio Leao a9c2e1229a Propagate error upward with LOCATION_NULL 2019-11-21 08:00:06 -03:00
Tulio Leao f94970b059 Use CoordsXY/ScreenCoordsXY for viewport*_with_z
Closes #10268
2019-11-19 18:33:40 -03:00
duncanspumpkin 1d6a923298 Refactor screen_get_map_xy_with_z to use CoordsXY structs 2019-11-19 11:20:58 +00:00
Tulio Leao 93083780df Use ScreenCoordsXY for windows/Map (#10233)
* Use ScreenCoordsXY for windows/Footpath

- Refactor `place_park_entrance_get_map_position()` to receive `ScreenCoordsXY` and return `CoordsXYZD`
- Refactor `sub_68A15E()` to receive `ScreenCoordsXY` and return `CoordsXY`. Some of its usage are narrowing the result on purpose, as same variable is used for contexts where `int16_t` is still a hard requirement.

* Properly increment for big Z and use LOCATION_NULL
2019-11-14 23:09:27 +01:00
Tulio Leao 47387690f5 Improve coords assignments 2019-11-13 18:28:03 -03:00
Tulio Leao 054bc8e4ca Receive ScreenCoordsXY and return CoordsXY in Viewport 2019-11-13 18:27:59 -03:00
Tulio Leao 9776a0843d Make Viewport::screen_to_map_pos() return coords (#10171)
* Make Viewport::screen_to_map_pos() return coords

* Fix clang-format

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

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

* Apply suggestions from code review
2019-11-02 08:04:46 +00:00
Tulio Leao afc14183e7 Use ScreenCoordsXY for tool_* functions 2019-10-29 19:02:58 -03:00
Tulio Leao dbb66dd028 Remove duplicate functions (#10067)
* Reduce code duplication in src\openrct2\interface\Window.cpp

`window_resize_gui_scenario_editor` was a subset of `window_resize_gui`

* Reduce code duplication in src\openrct2\network\Twitch.cpp

Both `GetFollowers()` and `GetMessage()` were very similar

* Reduce code duplication in src/openrct2/world/SmallScenery.cpp

`map_place_non_scenery_clear_func` and `map_place_scenery_clear_func` did basically the same thing, with a single branch difference

* Reduce code duplication in src/openrct2-ui/windows/TopToolbar.cpp

Make `top_toolbar_tool_update_scenery_clear` call `top_toolbar_tool_update_land_paint` and then do the additional differing calculation it did.
2019-10-19 15:38:26 +02:00
Tulio Leao ce1f38da25 Use ScreenCoordsXY for window functions (#10086)
* Use ScreenCoordsXY for window_create function

* Use ScreenCoordsXY for window_find_from_point function

* Use ScreenCoordsXY for window_find_widget_from_point

* Use ScreenCoordsXY for ride_contruction_tool*

* Use ScreenCoordsXY for window_event_tool*

* Use ScreenCoordsXY for window_event_scroll_mouse*

* Use ScreenCoordsXY for remaining window_event*

* Use ScreenCoordsXY for window_(set|move)_position
2019-10-19 13:07:03 +02:00
duncanspumpkin 213ba15ba5 Remove unused code and variables from function 2019-10-07 18:36:27 +01:00
Michael Steenbeek a11762b11a
Remove old C functions that only call their equivalent
* Remove old C functions that only call their equivalent

* fix formatting
2019-09-22 14:12:49 +02:00
duncanspumpkin f39905bd2e Clang format 2019-08-19 20:04:59 +01:00
duncanspumpkin 5fe5f8e964 Refactor audio_play_sound_at_location to use CoordsXYZ 2019-08-19 20:04:58 +01:00
duncanspumpkin 5333dc4295 Return a SurfaceElement from get_surface_element 2019-08-19 20:04:56 +01:00
Matt cc6321048f
Refactor window_invalidate to use rct_window::Invalidate 2019-08-11 17:22:00 +02:00
Michael Steenbeek 382935c50f
Merge pull request #9644 from IntelOrca/refactor/banners
Refactor banners
2019-07-27 10:59:57 +02:00
Ted John 5c07c53faf Refactor get banner 2019-07-25 22:21:19 +01:00
Ted John 85543bd1c8 Separate RCT2 and OpenRCT2 banner struct 2019-07-25 22:21:19 +01:00
Matt 126226dbe3
Fix #9625: Show correct cost in scenery selection 2019-07-23 18:03:26 +02:00
Duncan ab5f5b20cd
Use enum class for RCT2_SOUND (#9618)
* Use enum class for RCT2_SOUND

* Fix formatting. Fix mistaken declaration.

* Change name of enum to SoundId

* Fix clang format
2019-07-22 19:02:45 +01:00
ζeh Matt cd8c67ddac
Implement SetCheatAction. (#8990)
* Implement SetCheatAction.

* Bump up network version
2019-05-04 15:28:38 +02:00
Aaron van Geffen f1b9c71524
Merge pull request #8687 from Xkeeper0/f/multiplayer-plus
Multiplayer dropdown additions
2019-05-02 22:53:50 +02:00
duncanspumpkin d14637e1ca Fix narrowing and formatting 2019-05-02 17:47:01 +01:00
duncanspumpkin f6b610c325 Implement Banner Place/Remove Actions 2019-05-02 17:47:01 +01:00
Aaron van Geffen 57040c392c Change multiplayer toolbar image to framed globe, with pressed state. 2019-05-02 12:32:45 +02:00
Xkeeper 4a34d2a6da Disable "Reconnect" if not desynced. 2019-05-02 00:30:30 +02:00
Xkeeper c075eec224 Update sync icons, new multiplayer toolbar button
The multiplayer toolbar button is the same globe used for the
multiplayer option on the title screen, since it seems like
a nicer (and better?) looking option than the two riders.

Also conflicts less with the new sync icons.
2019-05-02 00:30:30 +02:00
Xkeeper 8c4de40239 Add graphics for desync notice 2019-05-02 00:29:25 +02:00
Xkeeper bc8ecd8e67 Add "Reconnect" option under the multiplayer button 2019-05-02 00:26:37 +02:00
Xkeeper d614fb4035 add network indicators for desync/player count 2019-05-02 00:22:03 +02:00
Aaron van Geffen df42cfe1e1
Change map toolbar icon with current rotation (#9154) 2019-05-02 00:07:20 +02:00
boucks b052c4ac61 Fix #9054: remove gSceneryTileElement by returning it within GameActi… (#9127)
* Fix #9054: remove gSceneryTileElement by returning it within GameActionResult

* fixing Clang-format issues

* fixing clang-format

lets try this again...

* fixing clang-format

alright should be good this time

* fixing clang-format issues

using automatic clang-formatting

* initializing tileElement
2019-04-24 09:42:00 +01:00
Duncan 46844e2218
Merge branch 'develop' into issue-9053 2019-04-21 19:50:20 +01:00
Michael Steenbeek 42a1a8704d
Use empty() for vectors; clean up bool comparisons (#9118) 2019-04-20 20:39:47 +02:00
Trevor Harkness 844a28f3f5 Fix formatting and added to contributors.md
Adjusted formatting for CI tests
2019-04-19 02:18:55 -04:00
Trevor Harkness 8cb50432de Fix #9053. Remove instances of gSceneryGroundFlags
Created subclass of GameActionResult in LargeSceneryPlaceAction and SmallSceneryPlaceAction. Removed references to global variable in other files.
2019-04-17 22:55:37 -04:00
duncanspumpkin d6522f0aee Fix formatting 2019-04-08 17:19:52 +01:00
duncanspumpkin baad532c17 Fix formatting 2019-04-07 14:55:08 +01:00
duncanspumpkin 00cbd75641 Return more useful error messages.
Fix clearance checks always being on for underground placement
2019-04-07 14:55:08 +01:00
duncanspumpkin d63919c0cc Implement LargeSceneryPlaceAction 2019-04-07 14:55:07 +01:00
duncanspumpkin 008ed86bca Make requested fixes 2019-04-07 12:02:04 +01:00
duncanspumpkin 3593366e95 Implement banner set colour action 2019-04-07 09:22:39 +01:00
duncanspumpkin 5ab42488a9 Implement large scenery set colour action 2019-04-07 09:22:33 +01:00
duncanspumpkin 8ef5afe2ce Implement wall set colour action 2019-04-06 19:39:01 +01:00
duncanspumpkin 8fc1d70239 Implement small scenery set colour action 2019-04-06 19:39:00 +01:00
duncanspumpkin 787993c117 Fix #9062. Pass the correct flag for ghosts. 2019-04-06 18:16:24 +01:00
duncanspumpkin 561ce03d18 Fix formatting 2019-04-04 19:23:44 +01:00
duncanspumpkin 30a5194085 Use a vector for map selection tiles 2019-04-04 19:23:44 +01:00
duncanspumpkin 7e6254f30c Fix function. 2019-04-02 18:36:57 +01:00
duncanspumpkin 29f5018bd1 Implement wall place game action 2019-04-02 18:36:57 +01:00
duncanspumpkin 81307f71df Implement LandSmoothAction 2019-03-27 18:48:26 +00:00
Joshua Tucker c09f283c25 Fix #8468: Removed code incorrectly increasing tile height 2019-03-26 12:10:46 -04:00
Aaron van Geffen f4602d0a34 Use SCREEN_FLAGS_EDITOR when appropriate. 2019-03-20 20:58:08 +01:00
Aaron van Geffen aeaa45c05b Fix #8927: Make cheats menu partially accessible in scenario editor. 2019-03-20 20:03:28 +01:00
duncanspumpkin 351adcc88b Merge #8897 branch 'surface_set_style_ga' into game_actions 2019-03-18 19:58:21 +00:00
Aaron van Geffen 97ba6eec08
Move common actions from debug menu into cheats menu (#8892)
This aims to make it less necessary for users to enable debugging tools.
2019-03-17 12:52:32 +01:00