1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-18 12:33:17 +01:00

Fix #5375: Use mask for fetching large scenery id, fix picking banner elements

This commit is contained in:
Hielke Morsink
2017-04-19 07:56:46 +02:00
committed by Michael Steenbeek
parent d53f276207
commit 9314b8b793

View File

@@ -1049,7 +1049,7 @@ static void scenery_eyedropper_tool_down(sint16 x, sint16 y, sint16 widgetIndex)
}
case VIEWPORT_INTERACTION_ITEM_LARGE_SCENERY:
{
sint32 entryIndex = mapElement->properties.scenerymultiple.type;
sint32 entryIndex = mapElement->properties.scenerymultiple.type & MAP_ELEMENT_LARGE_TYPE_MASK;
rct_scenery_entry * sceneryEntry = get_large_scenery_entry(entryIndex);
if (sceneryEntry != NULL || sceneryEntry != (rct_scenery_entry *)-1) {
sint32 sceneryId = get_scenery_id_from_entry_index(OBJECT_TYPE_LARGE_SCENERY, entryIndex);
@@ -1064,10 +1064,11 @@ static void scenery_eyedropper_tool_down(sint16 x, sint16 y, sint16 widgetIndex)
}
case VIEWPORT_INTERACTION_ITEM_BANNER:
{
sint32 entryIndex = mapElement->properties.banner.index;
rct_scenery_entry * sceneryEntry = get_large_scenery_entry(entryIndex);
sint32 bannerIndex = mapElement->properties.banner.index;
rct_banner *banner = &gBanners[bannerIndex];
rct_scenery_entry * sceneryEntry = get_banner_entry(banner->type);
if (sceneryEntry != NULL || sceneryEntry != (rct_scenery_entry *)-1) {
sint32 sceneryId = get_scenery_id_from_entry_index(OBJECT_TYPE_BANNERS, entryIndex);
sint32 sceneryId = get_scenery_id_from_entry_index(OBJECT_TYPE_BANNERS, banner->type);
if (sceneryId != -1 && window_scenery_set_selected_item(sceneryId)) {
gWindowSceneryEyedropperEnabled = false;
}