Duncan
733bc5a981
Close #12518 : Viewport Refactor ( #12541 )
...
* Remove viewport pointer from get_map_coordinates_from_pos
* Removed viewport from get_window
* Return a InteractionInfo from get_map_coord...
* Remove viewport_interaction_info struct
* Add Entity union to simplify code
* Name the enum used for viewport interaction
* Simplify functions further by returning the info struct
* Add default switches
2020-08-02 08:32:59 +01:00
Aaron van Geffen
16ad1d18fb
Refactor another set of widget definitions ( #12503 )
...
* Refactor TopToolbar
* Refactor TrackDesignManage
* Refactor TrackDesignPlace
* Refactor TrackList
* Refactor ViewClipping
* Refactor Viewport
* Refactor TitleEditor
* Refactor TitleCommandEditor
* Refactor Themes
* Refactor TextInput
2020-07-30 22:58:49 +02:00
Aaron van Geffen
681b8d7938
Introduce widget::width and widget::height helper functions ( #12053 )
2020-06-24 22:44:00 -03:00
TomasZilinek
cd6076b5bc
FIx #12017 - Create gfx_draw_sprite overload ( #12049 )
...
Second and final part. replaces the rest of the calls and removes the old function.
2020-06-24 12:48:17 -03:00
Tulio Leao
183ee1e595
Part of #11569 : Use ScreenCoordsXY instead of <x,y>
2020-06-11 10:11:33 -03:00
Tulio Leao
fab0ea131f
Part of #11569 : Use gfx_draw_string_right with ScreenCoordsXY
2020-06-11 10:11:20 -03:00
Michael Steenbeek
6d13f7ba68
Apply suggestions from code review
...
Co-authored-by: Aaron van Geffen <aaron@aaronweb.net>
2020-05-30 17:10:08 +02:00
Michiel
ac8dce44fd
Apply suggestions from code review
...
Co-authored-by: Michael Steenbeek <m.o.steenbeek@gmail.com>
2020-05-30 17:10:08 +02:00
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