mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2025-12-24 00:03:11 +01:00
Pass paint session to scenery_multiple_paint
This commit is contained in:
@@ -265,7 +265,7 @@ static void sub_68B3FB(paint_session * session, sint32 x, sint32 y)
|
||||
fence_paint(direction, height, map_element);
|
||||
break;
|
||||
case MAP_ELEMENT_TYPE_SCENERY_MULTIPLE:
|
||||
scenery_multiple_paint(direction, height, map_element);
|
||||
scenery_multiple_paint(session, direction, height, map_element);
|
||||
break;
|
||||
case MAP_ELEMENT_TYPE_BANNER:
|
||||
banner_paint(session, direction, height, map_element);
|
||||
|
||||
@@ -102,7 +102,7 @@ void surface_paint(paint_session * session, uint8 direction, uint16 height, rct_
|
||||
void path_paint(paint_session * session, uint8 direction, uint16 height, rct_map_element *mapElement);
|
||||
void scenery_paint(uint8 direction, sint32 height, rct_map_element* mapElement);
|
||||
void fence_paint(uint8 direction, sint32 height, rct_map_element* mapElement);
|
||||
void scenery_multiple_paint(uint8 direction, uint16 height, rct_map_element *mapElement);
|
||||
void scenery_multiple_paint(paint_session * session, uint8 direction, uint16 height, rct_map_element *mapElement);
|
||||
void track_paint(uint8 direction, sint32 height, rct_map_element *mapElement);
|
||||
|
||||
#endif
|
||||
|
||||
@@ -183,9 +183,9 @@ static const boundbox s98E3C4[] = {
|
||||
*
|
||||
* rct2: 0x006B7F0C
|
||||
*/
|
||||
void scenery_multiple_paint(uint8 direction, uint16 height, rct_map_element *mapElement) {
|
||||
void scenery_multiple_paint(paint_session * session, uint8 direction, uint16 height, rct_map_element *mapElement) {
|
||||
//RCT2_CALLPROC_X(0x6B7F0C, 0, 0, direction, height, (sint32)mapElement, 0, 0); return;
|
||||
gPaintSession.InteractionType = VIEWPORT_INTERACTION_ITEM_LARGE_SCENERY;
|
||||
session->InteractionType = VIEWPORT_INTERACTION_ITEM_LARGE_SCENERY;
|
||||
uint32 ebp = mapElement->properties.scenerymultiple.type >> 10;
|
||||
rct_scenery_entry *entry = get_large_scenery_entry(mapElement->properties.scenerymultiple.type & 0x3FF);
|
||||
if (entry == (void*)-1)
|
||||
@@ -206,7 +206,7 @@ void scenery_multiple_paint(uint8 direction, uint16 height, rct_map_element *map
|
||||
}
|
||||
}
|
||||
if (mapElement->flags & MAP_ELEMENT_FLAG_GHOST) {
|
||||
gPaintSession.InteractionType = VIEWPORT_INTERACTION_ITEM_NONE;
|
||||
session->InteractionType = VIEWPORT_INTERACTION_ITEM_NONE;
|
||||
ebp = construction_markers[gConfigGeneral.construction_marker_colour];
|
||||
image_id &= 0x7FFFF;
|
||||
dword_F4387C = ebp;
|
||||
@@ -243,7 +243,7 @@ void scenery_multiple_paint(uint8 direction, uint16 height, rct_map_element *map
|
||||
return;
|
||||
}
|
||||
}
|
||||
rct_drawpixelinfo* dpi = gPaintSession.Unk140E9A8;
|
||||
rct_drawpixelinfo* dpi = session->Unk140E9A8;
|
||||
if (dpi->zoom_level > 1) {
|
||||
scenery_multiple_paint_supports(direction, height, mapElement, dword_F4387C, tile);
|
||||
return;
|
||||
@@ -324,7 +324,7 @@ void scenery_multiple_paint(uint8 direction, uint16 height, rct_map_element *map
|
||||
}
|
||||
return;
|
||||
}
|
||||
rct_drawpixelinfo* dpi = gPaintSession.Unk140E9A8;
|
||||
rct_drawpixelinfo* dpi = session->Unk140E9A8;
|
||||
if (dpi->zoom_level > 0) {
|
||||
scenery_multiple_paint_supports(direction, height, mapElement, dword_F4387C, tile);
|
||||
return;
|
||||
|
||||
@@ -86,7 +86,7 @@ void surface_paint(paint_session * session, uint8 direction, uint16 height, rct_
|
||||
void path_paint(paint_session * session, uint8 direction, uint16 height, rct_map_element *mapElement) { }
|
||||
void scenery_paint(uint8 direction, int height, rct_map_element *mapElement) { }
|
||||
void fence_paint(uint8 direction, int height, rct_map_element *mapElement) { }
|
||||
void scenery_multiple_paint(uint8 direction, uint16 height, rct_map_element *mapElement) { }
|
||||
void scenery_multiple_paint(paint_session * session, uint8 direction, uint16 height, rct_map_element *mapElement) { }
|
||||
|
||||
rct_ride *get_ride(int index) {
|
||||
if (index < 0 || index >= MAX_RIDES) {
|
||||
|
||||
Reference in New Issue
Block a user