diff --git a/src/paint/map_element/path.c b/src/paint/map_element/path.c index 65b94806eb..4ea2652067 100644 --- a/src/paint/map_element/path.c +++ b/src/paint/map_element/path.c @@ -763,6 +763,26 @@ void path_paint(uint8 direction, uint16 height, rct_map_element * map_element) } else { loc_6A3B57(map_element, height, footpathEntry, word_F3F038, imageFlags, sceneryImageFlags); } + +#ifdef STOUT_EXPANDED_RENDERING_LIGHT + if (footpath_element_has_path_scenery(map_element) && !(map_element->flags & MAP_ELEMENT_FLAG_BROKEN)) { + rct_scenery_entry *sceneryEntry = get_footpath_item_entry(footpath_element_get_path_scenery_index(map_element)); + if (sceneryEntry->path_bit.flags & PATH_BIT_FLAG_LAMP) { + if (!(map_element->properties.path.edges & (1 << 0))) { + lightfx_add_3d_light_magic_from_drawing_tile(-16, 0, height + 23, LIGHTFX_LIGHT_TYPE_LANTERN_3); + } + if (!(map_element->properties.path.edges & (1 << 1))) { + lightfx_add_3d_light_magic_from_drawing_tile(0, 16, height + 23, LIGHTFX_LIGHT_TYPE_LANTERN_3); + } + if (!(map_element->properties.path.edges & (1 << 2))) { + lightfx_add_3d_light_magic_from_drawing_tile(16, 0, height + 23, LIGHTFX_LIGHT_TYPE_LANTERN_3); + } + if (!(map_element->properties.path.edges & (1 << 3))) { + lightfx_add_3d_light_magic_from_drawing_tile(0, -16, height + 23, LIGHTFX_LIGHT_TYPE_LANTERN_3); + } + } + } +#endif } void loc_6A37C9(rct_map_element * mapElement, int height, rct_footpath_entry * footpathEntry, bool hasFences, uint32 imageFlags, uint32 sceneryImageFlags)