mirror of https://github.com/OpenRCT2/OpenRCT2.git
Clean up PaintAddImageAsParent() calls (#19392)
This commit is contained in:
parent
dfb2c3fa60
commit
70af1c6c0d
|
@ -674,31 +674,6 @@ void PaintSessionFree([[maybe_unused]] PaintSession* session)
|
|||
GetContext()->GetPainter()->ReleaseSession(session);
|
||||
}
|
||||
|
||||
/**
|
||||
* rct2: 0x006861AC, 0x00686337, 0x006864D0, 0x0068666B, 0x0098196C
|
||||
*
|
||||
* @param image_id (ebx)
|
||||
* @param x_offset (al)
|
||||
* @param y_offset (cl)
|
||||
* @param bound_box_length_x (di)
|
||||
* @param bound_box_length_y (si)
|
||||
* @param bound_box_length_z (ah)
|
||||
* @param z_offset (dx)
|
||||
* @return (ebp) PaintStruct on success (CF == 0), nullptr on failure (CF == 1)
|
||||
*/
|
||||
PaintStruct* PaintAddImageAsParent(
|
||||
PaintSession& session, const ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize)
|
||||
{
|
||||
return PaintAddImageAsParent(session, image_id, offset, { offset, boundBoxSize });
|
||||
}
|
||||
|
||||
PaintStruct* PaintAddImageAsParent(
|
||||
PaintSession& session, const ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize,
|
||||
const CoordsXYZ& boundBoxOffset)
|
||||
{
|
||||
return PaintAddImageAsParent(session, image_id, offset, { boundBoxOffset, boundBoxSize });
|
||||
}
|
||||
|
||||
/**
|
||||
* rct2: 0x00686806, 0x006869B2, 0x00686B6F, 0x00686D31, 0x0098197C
|
||||
*
|
||||
|
|
|
@ -295,13 +295,26 @@ extern bool gPaintBoundingBoxes;
|
|||
extern bool gPaintBlockedTiles;
|
||||
extern bool gPaintWidePathsAsGhost;
|
||||
|
||||
PaintStruct* PaintAddImageAsParent(
|
||||
PaintSession& session, const ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize);
|
||||
PaintStruct* PaintAddImageAsParent(
|
||||
PaintSession& session, const ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize,
|
||||
const CoordsXYZ& boundBoxOffset);
|
||||
PaintStruct* PaintAddImageAsParent(
|
||||
PaintSession& session, const ImageId image_id, const CoordsXYZ& offset, const BoundBoxXYZ& boundBox);
|
||||
/**
|
||||
* rct2: 0x006861AC, 0x00686337, 0x006864D0, 0x0068666B, 0x0098196C
|
||||
*
|
||||
* @param image_id (ebx)
|
||||
* @param x_offset (al)
|
||||
* @param y_offset (cl)
|
||||
* @param bound_box_length_x (di)
|
||||
* @param bound_box_length_y (si)
|
||||
* @param bound_box_length_z (ah)
|
||||
* @param z_offset (dx)
|
||||
* @return (ebp) PaintStruct on success (CF == 0), nullptr on failure (CF == 1)
|
||||
*/
|
||||
inline PaintStruct* PaintAddImageAsParent(
|
||||
PaintSession& session, const ImageId image_id, const CoordsXYZ& offset, const CoordsXYZ& boundBoxSize)
|
||||
{
|
||||
return PaintAddImageAsParent(session, image_id, offset, { offset, boundBoxSize });
|
||||
}
|
||||
|
||||
[[nodiscard]] PaintStruct* PaintAddImageAsOrphan(
|
||||
PaintSession& session, const ImageId image_id, const CoordsXYZ& offset, const BoundBoxXYZ& boundBox);
|
||||
PaintStruct* PaintAddImageAsChild(
|
||||
|
|
|
@ -17,11 +17,12 @@ PaintStruct* PaintAddImageAsParentRotated(
|
|||
if (direction & 1)
|
||||
{
|
||||
return PaintAddImageAsParent(
|
||||
session, imageId, { offset.y, offset.x, offset.z }, { boundBox.length.y, boundBox.length.x, boundBox.length.z },
|
||||
{ boundBox.offset.y, boundBox.offset.x, boundBox.offset.z });
|
||||
session, imageId, { offset.y, offset.x, offset.z },
|
||||
{ { boundBox.offset.y, boundBox.offset.x, boundBox.offset.z },
|
||||
{ boundBox.length.y, boundBox.length.x, boundBox.length.z } });
|
||||
}
|
||||
|
||||
return PaintAddImageAsParent(session, imageId, offset, boundBox.length, boundBox.offset);
|
||||
return PaintAddImageAsParent(session, imageId, offset, boundBox);
|
||||
}
|
||||
|
||||
PaintStruct* PaintAddImageAsChildRotated(
|
||||
|
|
|
@ -967,7 +967,7 @@ bool MetalASupportsPaintSetup(
|
|||
imageIndex += z - 1;
|
||||
auto image_id = imageTemplate.WithIndex(imageIndex);
|
||||
|
||||
PaintAddImageAsParent(session, image_id, { xOffset, yOffset, height }, { 0, 0, 0 }, boundBoxOffset);
|
||||
PaintAddImageAsParent(session, image_id, { xOffset, yOffset, height }, { boundBoxOffset, { 0, 0, 0 } });
|
||||
|
||||
height += z;
|
||||
}
|
||||
|
@ -1148,8 +1148,8 @@ bool MetalBSupportsPaintSetup(
|
|||
|
||||
uint32_t imageId = _97B15C[supportType].beam_id + (beamLength - 1);
|
||||
PaintAddImageAsParent(
|
||||
session, imageTemplate.WithIndex(imageId), { SupportBoundBoxes[originalSegment], baseHeight }, { 0, 0, 0 },
|
||||
{ SupportBoundBoxes[originalSegment], height });
|
||||
session, imageTemplate.WithIndex(imageId), { SupportBoundBoxes[originalSegment], baseHeight },
|
||||
{ { SupportBoundBoxes[originalSegment], height }, { 0, 0, 0 } });
|
||||
baseHeight += beamLength;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -377,29 +377,29 @@ void VirtualFloorPaint(PaintSession& session)
|
|||
{
|
||||
const auto baseImg = !(occupiedEdges & EDGE_NE) ? ((litEdges & EDGE_NE) ? remap_lit : remap_base) : remap_edge;
|
||||
PaintAddImageAsParent(
|
||||
session, baseImg.WithIndex(SPR_G2_SELECTION_EDGE_NE), virtualFloorOffset, { 0, 0, 1 },
|
||||
{ 5, 5, _virtualFloorHeight + ((dullEdges & EDGE_NE) ? -2 : 0) });
|
||||
session, baseImg.WithIndex(SPR_G2_SELECTION_EDGE_NE), virtualFloorOffset,
|
||||
{ { 5, 5, _virtualFloorHeight + ((dullEdges & EDGE_NE) ? -2 : 0) }, { 0, 0, 1 } });
|
||||
}
|
||||
if (paintEdges & EDGE_SE)
|
||||
{
|
||||
const auto baseImg = !(occupiedEdges & EDGE_SE) ? ((litEdges & EDGE_SE) ? remap_lit : remap_base) : remap_edge;
|
||||
PaintAddImageAsParent(
|
||||
session, baseImg.WithIndex(SPR_G2_SELECTION_EDGE_SE), virtualFloorOffset, { 1, 1, 1 },
|
||||
{ 16, 27, _virtualFloorHeight + ((dullEdges & EDGE_SE) ? -2 : 0) });
|
||||
session, baseImg.WithIndex(SPR_G2_SELECTION_EDGE_SE), virtualFloorOffset,
|
||||
{ { 16, 27, _virtualFloorHeight + ((dullEdges & EDGE_SE) ? -2 : 0) }, { 1, 1, 1 } });
|
||||
}
|
||||
if (paintEdges & EDGE_SW)
|
||||
{
|
||||
const auto baseImg = !(occupiedEdges & EDGE_SW) ? ((litEdges & EDGE_SW) ? remap_lit : remap_base) : remap_edge;
|
||||
PaintAddImageAsParent(
|
||||
session, baseImg.WithIndex(SPR_G2_SELECTION_EDGE_SW), virtualFloorOffset, { 1, 1, 1 },
|
||||
{ 27, 16, _virtualFloorHeight + ((dullEdges & EDGE_SW) ? -2 : 0) });
|
||||
session, baseImg.WithIndex(SPR_G2_SELECTION_EDGE_SW), virtualFloorOffset,
|
||||
{ { 27, 16, _virtualFloorHeight + ((dullEdges & EDGE_SW) ? -2 : 0) }, { 1, 1, 1 } });
|
||||
}
|
||||
if (paintEdges & EDGE_NW)
|
||||
{
|
||||
const auto baseImg = !(occupiedEdges & EDGE_NW) ? ((litEdges & EDGE_NW) ? remap_lit : remap_base) : remap_edge;
|
||||
PaintAddImageAsParent(
|
||||
session, baseImg.WithIndex(SPR_G2_SELECTION_EDGE_NW), virtualFloorOffset, { 0, 0, 1 },
|
||||
{ 5, 5, _virtualFloorHeight + ((dullEdges & EDGE_NW) ? -2 : 0) });
|
||||
session, baseImg.WithIndex(SPR_G2_SELECTION_EDGE_NW), virtualFloorOffset,
|
||||
{ { 5, 5, _virtualFloorHeight + ((dullEdges & EDGE_NW) ? -2 : 0) }, { 0, 0, 1 } });
|
||||
}
|
||||
|
||||
if (gConfigGeneral.VirtualFloorStyle != VirtualFloorStyles::Glassy)
|
||||
|
@ -408,7 +408,8 @@ void VirtualFloorPaint(PaintSession& session)
|
|||
if (!weAreOccupied && !weAreLit && weAreAboveGround && weAreOwned)
|
||||
{
|
||||
auto imageColourFlats = ImageId(SPR_G2_SURFACE_GLASSY_RECOLOURABLE, FilterPaletteID::PaletteWater).WithBlended(true);
|
||||
PaintAddImageAsParent(session, imageColourFlats, virtualFloorOffset, { 30, 30, 0 }, { 2, 2, _virtualFloorHeight - 3 });
|
||||
PaintAddImageAsParent(
|
||||
session, imageColourFlats, virtualFloorOffset, { { 2, 2, _virtualFloorHeight - 3 }, { 30, 30, 0 } });
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -115,10 +115,10 @@ void PaintBanner(PaintSession& session, uint8_t direction, int32_t height, const
|
|||
auto imageIndex = (direction << 1) + bannerEntry->image;
|
||||
auto imageId = imageTemplate.WithIndex(imageIndex);
|
||||
auto bbOffset = CoordsXYZ(BannerBoundBoxes[direction][0], height + 2);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 1, 21 }, bbOffset);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { bbOffset, { 1, 1, 21 } });
|
||||
|
||||
bbOffset = CoordsXYZ(BannerBoundBoxes[direction][1], height + 2);
|
||||
PaintAddImageAsParent(session, imageId.WithIndexOffset(1), { 0, 0, height }, { 1, 1, 21 }, bbOffset);
|
||||
PaintAddImageAsParent(session, imageId.WithIndexOffset(1), { 0, 0, height }, { bbOffset, { 1, 1, 21 } });
|
||||
|
||||
PaintBannerScrollingText(session, *bannerEntry, *banner, bannerElement, direction, height, bbOffset);
|
||||
}
|
||||
|
|
|
@ -397,7 +397,7 @@ void PaintLargeScenery(PaintSession& session, uint8_t direction, uint16_t height
|
|||
const CoordsXYZ& bbLength = { LargeSceneryBoundBoxes[bbIndex].length, boxlengthZ };
|
||||
|
||||
auto imageIndex = sceneryEntry->image + 4 + (sequenceNum << 2) + direction;
|
||||
PaintAddImageAsParent(session, imageTemplate.WithIndex(imageIndex), { 0, 0, height }, bbLength, bbOffset);
|
||||
PaintAddImageAsParent(session, imageTemplate.WithIndex(imageIndex), { 0, 0, height }, { bbOffset, bbLength });
|
||||
|
||||
if (sceneryEntry->scrolling_mode != SCROLLING_MODE_NONE && direction != 1 && direction != 2)
|
||||
{
|
||||
|
|
|
@ -154,25 +154,25 @@ static void PathBitLightsPaint(
|
|||
{
|
||||
auto imageIndex = GetFootpathLampImage(pathBitEntry, EDGE_NE, isBroken);
|
||||
PaintAddImageAsParent(
|
||||
session, imageTemplate.WithIndex(imageIndex), { 2, 16, height }, { 0, 16, 23 }, { 6, 8, height + 2 });
|
||||
session, imageTemplate.WithIndex(imageIndex), { 2, 16, height }, { { 6, 8, height + 2 }, { 0, 16, 23 } });
|
||||
}
|
||||
if (!(edges & EDGE_SE))
|
||||
{
|
||||
auto imageIndex = GetFootpathLampImage(pathBitEntry, EDGE_SE, isBroken);
|
||||
PaintAddImageAsParent(
|
||||
session, imageTemplate.WithIndex(imageIndex), { 16, 30, height }, { 16, 0, 23 }, { 8, 23, height + 2 });
|
||||
session, imageTemplate.WithIndex(imageIndex), { 16, 30, height }, { { 8, 23, height + 2 }, { 16, 0, 23 } });
|
||||
}
|
||||
if (!(edges & EDGE_SW))
|
||||
{
|
||||
auto imageIndex = GetFootpathLampImage(pathBitEntry, EDGE_SW, isBroken);
|
||||
PaintAddImageAsParent(
|
||||
session, imageTemplate.WithIndex(imageIndex), { 30, 16, height }, { 0, 16, 23 }, { 23, 8, height + 2 });
|
||||
session, imageTemplate.WithIndex(imageIndex), { 30, 16, height }, { { 23, 8, height + 2 }, { 0, 16, 23 } });
|
||||
}
|
||||
if (!(edges & EDGE_NW))
|
||||
{
|
||||
auto imageIndex = GetFootpathLampImage(pathBitEntry, EDGE_NW, isBroken);
|
||||
PaintAddImageAsParent(
|
||||
session, imageTemplate.WithIndex(imageIndex), { 16, 2, height }, { 16, 0, 23 }, { 8, 6, height + 2 });
|
||||
session, imageTemplate.WithIndex(imageIndex), { 16, 2, height }, { { 8, 6, height + 2 }, { 16, 0, 23 } });
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -210,7 +210,7 @@ static void PathBitBinsPaint(
|
|||
auto imageIndex = GetFootpathBinImage(pathBitEntry, EDGE_NE, binsAreVandalised, binIsFull);
|
||||
if (!highlightPathIssues || binIsFull || binsAreVandalised)
|
||||
PaintAddImageAsParent(
|
||||
session, imageTemplate.WithIndex(imageIndex), { 7, 16, height }, { 0, 16, 7 }, { 6, 8, height + 2 });
|
||||
session, imageTemplate.WithIndex(imageIndex), { 7, 16, height }, { { 6, 8, height + 2 }, { 0, 16, 7 } });
|
||||
}
|
||||
if (!(edges & EDGE_SE))
|
||||
{
|
||||
|
@ -218,7 +218,7 @@ static void PathBitBinsPaint(
|
|||
auto imageIndex = GetFootpathBinImage(pathBitEntry, EDGE_SE, binsAreVandalised, binIsFull);
|
||||
if (!highlightPathIssues || binIsFull || binsAreVandalised)
|
||||
PaintAddImageAsParent(
|
||||
session, imageTemplate.WithIndex(imageIndex), { 16, 25, height }, { 16, 0, 7 }, { 8, 23, height + 2 });
|
||||
session, imageTemplate.WithIndex(imageIndex), { 16, 25, height }, { { 8, 23, height + 2 }, { 16, 0, 7 } });
|
||||
}
|
||||
if (!(edges & EDGE_SW))
|
||||
{
|
||||
|
@ -226,7 +226,7 @@ static void PathBitBinsPaint(
|
|||
auto imageIndex = GetFootpathBinImage(pathBitEntry, EDGE_SW, binsAreVandalised, binIsFull);
|
||||
if (!highlightPathIssues || binIsFull || binsAreVandalised)
|
||||
PaintAddImageAsParent(
|
||||
session, imageTemplate.WithIndex(imageIndex), { 25, 16, height }, { 0, 16, 7 }, { 23, 8, height + 2 });
|
||||
session, imageTemplate.WithIndex(imageIndex), { 25, 16, height }, { { 23, 8, height + 2 }, { 0, 16, 7 } });
|
||||
}
|
||||
if (!(edges & EDGE_NW))
|
||||
{
|
||||
|
@ -234,7 +234,7 @@ static void PathBitBinsPaint(
|
|||
auto imageIndex = GetFootpathBinImage(pathBitEntry, EDGE_NW, binsAreVandalised, binIsFull);
|
||||
if (!highlightPathIssues || binIsFull || binsAreVandalised)
|
||||
PaintAddImageAsParent(
|
||||
session, imageTemplate.WithIndex(imageIndex), { 16, 7, height }, { 16, 0, 7 }, { 8, 6, height + 2 });
|
||||
session, imageTemplate.WithIndex(imageIndex), { 16, 7, height }, { { 8, 6, height + 2 }, { 16, 0, 7 } });
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -248,27 +248,27 @@ static void PathBitBenchesPaint(
|
|||
{
|
||||
auto imageIndex = GetFootpathBenchImage(pathBitEntry, EDGE_NE, isBroken);
|
||||
PaintAddImageAsParent(
|
||||
session, imageTemplate.WithIndex(imageIndex), { 7, 16, height }, { 0, 16, 7 }, { 6, 8, height + 2 });
|
||||
session, imageTemplate.WithIndex(imageIndex), { 7, 16, height }, { { 6, 8, height + 2 }, { 0, 16, 7 } });
|
||||
}
|
||||
if (!(edges & EDGE_SE))
|
||||
{
|
||||
auto imageIndex = GetFootpathBenchImage(pathBitEntry, EDGE_SE, isBroken);
|
||||
PaintAddImageAsParent(
|
||||
session, imageTemplate.WithIndex(imageIndex), { 16, 25, height }, { 16, 0, 7 }, { 8, 23, height + 2 });
|
||||
session, imageTemplate.WithIndex(imageIndex), { 16, 25, height }, { { 8, 23, height + 2 }, { 16, 0, 7 } });
|
||||
}
|
||||
|
||||
if (!(edges & EDGE_SW))
|
||||
{
|
||||
auto imageIndex = GetFootpathBenchImage(pathBitEntry, EDGE_SW, isBroken);
|
||||
PaintAddImageAsParent(
|
||||
session, imageTemplate.WithIndex(imageIndex), { 25, 16, height }, { 0, 16, 7 }, { 23, 8, height + 2 });
|
||||
session, imageTemplate.WithIndex(imageIndex), { 25, 16, height }, { { 23, 8, height + 2 }, { 0, 16, 7 } });
|
||||
}
|
||||
|
||||
if (!(edges & EDGE_NW))
|
||||
{
|
||||
auto imageIndex = GetFootpathBenchImage(pathBitEntry, EDGE_NW, isBroken);
|
||||
PaintAddImageAsParent(
|
||||
session, imageTemplate.WithIndex(imageIndex), { 16, 7, height }, { 16, 0, 7 }, { 8, 6, height + 2 });
|
||||
session, imageTemplate.WithIndex(imageIndex), { 16, 7, height }, { { 8, 6, height + 2 }, { 16, 0, 7 } });
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -280,10 +280,10 @@ static void PathBitJumpingFountainsPaint(
|
|||
return;
|
||||
|
||||
auto imageId = imageTemplate.WithIndex(pathBitEntry.image);
|
||||
PaintAddImageAsParent(session, imageId.WithIndexOffset(1), { 0, 0, height }, { 1, 1, 2 }, { 6, 8, height + 2 });
|
||||
PaintAddImageAsParent(session, imageId.WithIndexOffset(2), { 0, 0, height }, { 1, 1, 2 }, { 8, 23, height + 2 });
|
||||
PaintAddImageAsParent(session, imageId.WithIndexOffset(3), { 0, 0, height }, { 1, 1, 2 }, { 23, 8, height + 2 });
|
||||
PaintAddImageAsParent(session, imageId.WithIndexOffset(4), { 0, 0, height }, { 1, 1, 2 }, { 8, 6, height + 2 });
|
||||
PaintAddImageAsParent(session, imageId.WithIndexOffset(1), { 0, 0, height }, { { 6, 8, height + 2 }, { 1, 1, 2 } });
|
||||
PaintAddImageAsParent(session, imageId.WithIndexOffset(2), { 0, 0, height }, { { 8, 23, height + 2 }, { 1, 1, 2 } });
|
||||
PaintAddImageAsParent(session, imageId.WithIndexOffset(3), { 0, 0, height }, { { 23, 8, height + 2 }, { 1, 1, 2 } });
|
||||
PaintAddImageAsParent(session, imageId.WithIndexOffset(4), { 0, 0, height }, { { 8, 6, height + 2 }, { 1, 1, 2 } });
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -305,27 +305,27 @@ static void PathPaintFencesAndQueueBanners(
|
|||
{
|
||||
case 0:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(22), { 0, 4, height }, { 32, 1, 23 }, { 0, 4, height + 2 });
|
||||
session, imageId.WithIndexOffset(22), { 0, 4, height }, { { 0, 4, height + 2 }, { 32, 1, 23 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(22), { 0, 28, height }, { 32, 1, 23 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(22), { 0, 28, height }, { { 0, 28, height + 2 }, { 32, 1, 23 } });
|
||||
break;
|
||||
case 1:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(21), { 4, 0, height }, { 1, 32, 23 }, { 4, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(21), { 4, 0, height }, { { 4, 0, height + 2 }, { 1, 32, 23 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(21), { 28, 0, height }, { 1, 32, 23 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(21), { 28, 0, height }, { { 28, 0, height + 2 }, { 1, 32, 23 } });
|
||||
break;
|
||||
case 2:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(23), { 0, 4, height }, { 32, 1, 23 }, { 0, 4, height + 2 });
|
||||
session, imageId.WithIndexOffset(23), { 0, 4, height }, { { 0, 4, height + 2 }, { 32, 1, 23 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(23), { 0, 28, height }, { 32, 1, 23 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(23), { 0, 28, height }, { { 0, 28, height + 2 }, { 32, 1, 23 } });
|
||||
break;
|
||||
case 3:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(20), { 4, 0, height }, { 1, 32, 23 }, { 4, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(20), { 4, 0, height }, { { 4, 0, height + 2 }, { 1, 32, 23 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(20), { 28, 0, height }, { 1, 32, 23 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(20), { 28, 0, height }, { { 28, 0, height + 2 }, { 1, 32, 23 } });
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -336,115 +336,115 @@ static void PathPaintFencesAndQueueBanners(
|
|||
{
|
||||
case 0b0001:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(17), { 0, 4, height }, { 28, 1, 7 }, { 0, 4, height + 2 });
|
||||
session, imageId.WithIndexOffset(17), { 0, 4, height }, { { 0, 4, height + 2 }, { 28, 1, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(17), { 0, 28, height }, { 28, 1, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(17), { 0, 28, height }, { { 0, 28, height + 2 }, { 28, 1, 7 } });
|
||||
break;
|
||||
case 0b0010:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(18), { 4, 0, height }, { 1, 28, 7 }, { 4, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(18), { 4, 0, height }, { { 4, 0, height + 2 }, { 1, 28, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(18), { 28, 0, height }, { 1, 28, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(18), { 28, 0, height }, { { 28, 0, height + 2 }, { 1, 28, 7 } });
|
||||
break;
|
||||
case 0b0011:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(17), { 0, 4, height }, { 28, 1, 7 }, { 0, 4, height + 2 });
|
||||
session, imageId.WithIndexOffset(17), { 0, 4, height }, { { 0, 4, height + 2 }, { 28, 1, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(18), { 28, 0, height }, { 1, 28, 7 },
|
||||
{ 28, 4, height + 2 }); // bound_box_offset_y seems to be a bug
|
||||
session, imageId.WithIndexOffset(18), { 28, 0, height },
|
||||
{ { 28, 4, height + 2 }, { 1, 28, 7 } }); // bound_box_offset_y seems to be a bug
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(25), { 0, 0, height }, { 4, 4, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(25), { 0, 0, height }, { { 0, 28, height + 2 }, { 4, 4, 7 } });
|
||||
break;
|
||||
case 0b0100:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(19), { 0, 4, height }, { 28, 1, 7 }, { 0, 4, height + 2 });
|
||||
session, imageId.WithIndexOffset(19), { 0, 4, height }, { { 0, 4, height + 2 }, { 28, 1, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(19), { 0, 28, height }, { 28, 1, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(19), { 0, 28, height }, { { 0, 28, height + 2 }, { 28, 1, 7 } });
|
||||
break;
|
||||
case 0b0101:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(15), { 0, 4, height }, { 32, 1, 7 }, { 0, 4, height + 2 });
|
||||
session, imageId.WithIndexOffset(15), { 0, 4, height }, { { 0, 4, height + 2 }, { 32, 1, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(15), { 0, 28, height }, { 32, 1, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(15), { 0, 28, height }, { { 0, 28, height + 2 }, { 32, 1, 7 } });
|
||||
break;
|
||||
case 0b0110:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(18), { 4, 0, height }, { 1, 28, 7 }, { 4, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(18), { 4, 0, height }, { { 4, 0, height + 2 }, { 1, 28, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(19), { 0, 4, height }, { 28, 1, 7 }, { 0, 4, height + 2 });
|
||||
session, imageId.WithIndexOffset(19), { 0, 4, height }, { { 0, 4, height + 2 }, { 28, 1, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(26), { 0, 0, height }, { 4, 4, 7 }, { 28, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(26), { 0, 0, height }, { { 28, 28, height + 2 }, { 4, 4, 7 } });
|
||||
break;
|
||||
case 0b0111:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(15), { 0, 4, height }, { 32, 1, 7 }, { 0, 4, height + 2 });
|
||||
session, imageId.WithIndexOffset(15), { 0, 4, height }, { { 0, 4, height + 2 }, { 32, 1, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(25), { 0, 0, height }, { 4, 4, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(25), { 0, 0, height }, { { 0, 28, height + 2 }, { 4, 4, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(26), { 0, 0, height }, { 4, 4, 7 }, { 28, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(26), { 0, 0, height }, { { 28, 28, height + 2 }, { 4, 4, 7 } });
|
||||
break;
|
||||
case 0b1000:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(16), { 4, 0, height }, { 1, 28, 7 }, { 4, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(16), { 4, 0, height }, { { 4, 0, height + 2 }, { 1, 28, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(16), { 28, 0, height }, { 1, 28, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(16), { 28, 0, height }, { { 28, 0, height + 2 }, { 1, 28, 7 } });
|
||||
break;
|
||||
case 0b1001:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(16), { 28, 0, height }, { 1, 28, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(16), { 28, 0, height }, { { 28, 0, height + 2 }, { 1, 28, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(17), { 0, 28, height }, { 28, 1, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(17), { 0, 28, height }, { { 0, 28, height + 2 }, { 28, 1, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(24), { 0, 0, height }, { 4, 4, 7 }, { 0, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(24), { 0, 0, height }, { { 0, 0, height + 2 }, { 4, 4, 7 } });
|
||||
break;
|
||||
case 0b1010:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(14), { 4, 0, height }, { 1, 32, 7 }, { 4, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(14), { 4, 0, height }, { { 4, 0, height + 2 }, { 1, 32, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(14), { 28, 0, height }, { 1, 32, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(14), { 28, 0, height }, { { 28, 0, height + 2 }, { 1, 32, 7 } });
|
||||
break;
|
||||
case 0b1011:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(14), { 28, 0, height }, { 1, 32, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(14), { 28, 0, height }, { { 28, 0, height + 2 }, { 1, 32, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(24), { 0, 0, height }, { 4, 4, 7 }, { 0, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(24), { 0, 0, height }, { { 0, 0, height + 2 }, { 4, 4, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(25), { 0, 0, height }, { 4, 4, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(25), { 0, 0, height }, { { 0, 28, height + 2 }, { 4, 4, 7 } });
|
||||
break;
|
||||
case 0b1100:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(16), { 4, 0, height }, { 1, 28, 7 }, { 4, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(16), { 4, 0, height }, { { 4, 0, height + 2 }, { 1, 28, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(19), { 0, 28, height }, { 28, 1, 7 },
|
||||
{ 4, 28, height + 2 }); // bound_box_offset_x seems to be a bug
|
||||
session, imageId.WithIndexOffset(19), { 0, 28, height },
|
||||
{ { 4, 28, height + 2 }, { 28, 1, 7 } }); // bound_box_offset_x seems to be a bug
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(27), { 0, 0, height }, { 4, 4, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(27), { 0, 0, height }, { { 28, 0, height + 2 }, { 4, 4, 7 } });
|
||||
break;
|
||||
case 0b1101:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(15), { 0, 28, height }, { 32, 1, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(15), { 0, 28, height }, { { 0, 28, height + 2 }, { 32, 1, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(24), { 0, 0, height }, { 4, 4, 7 }, { 0, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(24), { 0, 0, height }, { { 0, 0, height + 2 }, { 4, 4, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(27), { 0, 0, height }, { 4, 4, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(27), { 0, 0, height }, { { 28, 0, height + 2 }, { 4, 4, 7 } });
|
||||
break;
|
||||
case 0b1110:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(14), { 4, 0, height }, { 1, 32, 7 }, { 4, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(14), { 4, 0, height }, { { 4, 0, height + 2 }, { 1, 32, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(26), { 0, 0, height }, { 4, 4, 7 }, { 28, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(26), { 0, 0, height }, { { 28, 28, height + 2 }, { 4, 4, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(27), { 0, 0, height }, { 4, 4, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(27), { 0, 0, height }, { { 28, 0, height + 2 }, { 4, 4, 7 } });
|
||||
break;
|
||||
case 0b1111:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(24), { 0, 0, height }, { 4, 4, 7 }, { 0, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(24), { 0, 0, height }, { { 0, 0, height + 2 }, { 4, 4, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(25), { 0, 0, height }, { 4, 4, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(25), { 0, 0, height }, { { 0, 28, height + 2 }, { 4, 4, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(26), { 0, 0, height }, { 4, 4, 7 }, { 28, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(26), { 0, 0, height }, { { 28, 28, height + 2 }, { 4, 4, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(27), { 0, 0, height }, { 4, 4, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(27), { 0, 0, height }, { { 28, 0, height + 2 }, { 4, 4, 7 } });
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -469,13 +469,13 @@ static void PathPaintFencesAndQueueBanners(
|
|||
imageId = imageId.WithIndexOffset(28 + (direction << 1));
|
||||
|
||||
// Draw pole in the back
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 1, 21 }, boundBoxOffsets);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { boundBoxOffsets, { 1, 1, 21 } });
|
||||
|
||||
// Draw pole in the front and banner
|
||||
boundBoxOffsets.x = BannerBoundBoxes[direction][1].x;
|
||||
boundBoxOffsets.y = BannerBoundBoxes[direction][1].y;
|
||||
imageId = imageId.WithIndexOffset(1);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 1, 21 }, boundBoxOffsets);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { boundBoxOffsets, { 1, 1, 21 } });
|
||||
|
||||
direction--;
|
||||
// If text shown
|
||||
|
@ -538,27 +538,27 @@ static void PathPaintFencesAndQueueBanners(
|
|||
{
|
||||
case 0:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(8), { 0, 4, height }, { 32, 1, 23 }, { 0, 4, height + 2 });
|
||||
session, imageId.WithIndexOffset(8), { 0, 4, height }, { { 0, 4, height + 2 }, { 32, 1, 23 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(8), { 0, 28, height }, { 32, 1, 23 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(8), { 0, 28, height }, { { 0, 28, height + 2 }, { 32, 1, 23 } });
|
||||
break;
|
||||
case 1:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(7), { 4, 0, height }, { 1, 32, 23 }, { 4, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(7), { 4, 0, height }, { { 4, 0, height + 2 }, { 1, 32, 23 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(7), { 28, 0, height }, { 1, 32, 23 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(7), { 28, 0, height }, { { 28, 0, height + 2 }, { 1, 32, 23 } });
|
||||
break;
|
||||
case 2:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(9), { 0, 4, height }, { 32, 1, 23 }, { 0, 4, height + 2 });
|
||||
session, imageId.WithIndexOffset(9), { 0, 4, height }, { { 0, 4, height + 2 }, { 32, 1, 23 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(9), { 0, 28, height }, { 32, 1, 23 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(9), { 0, 28, height }, { { 0, 28, height + 2 }, { 32, 1, 23 } });
|
||||
break;
|
||||
case 3:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(6), { 4, 0, height }, { 1, 32, 23 }, { 4, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(6), { 4, 0, height }, { { 4, 0, height + 2 }, { 1, 32, 23 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(6), { 28, 0, height }, { 1, 32, 23 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(6), { 28, 0, height }, { { 28, 0, height + 2 }, { 1, 32, 23 } });
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -576,142 +576,142 @@ static void PathPaintFencesAndQueueBanners(
|
|||
break;
|
||||
case 1:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(3), { 0, 4, height }, { 28, 1, 7 }, { 0, 4, height + 2 });
|
||||
session, imageId.WithIndexOffset(3), { 0, 4, height }, { { 0, 4, height + 2 }, { 28, 1, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(3), { 0, 28, height }, { 28, 1, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(3), { 0, 28, height }, { { 0, 28, height + 2 }, { 28, 1, 7 } });
|
||||
break;
|
||||
case 2:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(4), { 4, 0, height }, { 1, 28, 7 }, { 4, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(4), { 4, 0, height }, { { 4, 0, height + 2 }, { 1, 28, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(4), { 28, 0, height }, { 1, 28, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(4), { 28, 0, height }, { { 28, 0, height + 2 }, { 1, 28, 7 } });
|
||||
break;
|
||||
case 4:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(5), { 0, 4, height }, { 28, 1, 7 }, { 0, 4, height + 2 });
|
||||
session, imageId.WithIndexOffset(5), { 0, 4, height }, { { 0, 4, height + 2 }, { 28, 1, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(5), { 0, 28, height }, { 28, 1, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(5), { 0, 28, height }, { { 0, 28, height + 2 }, { 28, 1, 7 } });
|
||||
break;
|
||||
case 5:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(1), { 0, 4, height }, { 32, 1, 7 }, { 0, 4, height + 2 });
|
||||
session, imageId.WithIndexOffset(1), { 0, 4, height }, { { 0, 4, height + 2 }, { 32, 1, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(1), { 0, 28, height }, { 32, 1, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(1), { 0, 28, height }, { { 0, 28, height + 2 }, { 32, 1, 7 } });
|
||||
break;
|
||||
case 8:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(2), { 4, 0, height }, { 1, 28, 7 }, { 4, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(2), { 4, 0, height }, { { 4, 0, height + 2 }, { 1, 28, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(2), { 28, 0, height }, { 1, 28, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(2), { 28, 0, height }, { { 28, 0, height + 2 }, { 1, 28, 7 } });
|
||||
break;
|
||||
case 10:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(0), { 4, 0, height }, { 1, 32, 7 }, { 4, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(0), { 4, 0, height }, { { 4, 0, height + 2 }, { 1, 32, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(0), { 28, 0, height }, { 1, 32, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(0), { 28, 0, height }, { { 28, 0, height + 2 }, { 1, 32, 7 } });
|
||||
break;
|
||||
|
||||
case 3:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(3), { 0, 4, height }, { 28, 1, 7 }, { 0, 4, height + 2 });
|
||||
session, imageId.WithIndexOffset(3), { 0, 4, height }, { { 0, 4, height + 2 }, { 28, 1, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(4), { 28, 0, height }, { 1, 28, 7 },
|
||||
{ 28, 4, height + 2 }); // bound_box_offset_y seems to be a bug
|
||||
session, imageId.WithIndexOffset(4), { 28, 0, height },
|
||||
{ { 28, 4, height + 2 }, { 1, 28, 7 } }); // bound_box_offset_y seems to be a bug
|
||||
if (!(drawnCorners & FOOTPATH_CORNER_0))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(11), { 0, 0, height }, { 4, 4, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(11), { 0, 0, height }, { { 0, 28, height + 2 }, { 4, 4, 7 } });
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(4), { 4, 0, height }, { 1, 28, 7 }, { 4, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(4), { 4, 0, height }, { { 4, 0, height + 2 }, { 1, 28, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(5), { 0, 4, height }, { 28, 1, 7 }, { 0, 4, height + 2 });
|
||||
session, imageId.WithIndexOffset(5), { 0, 4, height }, { { 0, 4, height + 2 }, { 28, 1, 7 } });
|
||||
if (!(drawnCorners & FOOTPATH_CORNER_1))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(12), { 0, 0, height }, { 4, 4, 7 }, { 28, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(12), { 0, 0, height }, { { 28, 28, height + 2 }, { 4, 4, 7 } });
|
||||
}
|
||||
break;
|
||||
case 9:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(2), { 28, 0, height }, { 1, 28, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(2), { 28, 0, height }, { { 28, 0, height + 2 }, { 1, 28, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(3), { 0, 28, height }, { 28, 1, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(3), { 0, 28, height }, { { 0, 28, height + 2 }, { 28, 1, 7 } });
|
||||
if (!(drawnCorners & FOOTPATH_CORNER_3))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(10), { 0, 0, height }, { 4, 4, 7 }, { 0, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(10), { 0, 0, height }, { { 0, 0, height + 2 }, { 4, 4, 7 } });
|
||||
}
|
||||
break;
|
||||
case 12:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(2), { 4, 0, height }, { 1, 28, 7 }, { 4, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(2), { 4, 0, height }, { { 4, 0, height + 2 }, { 1, 28, 7 } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(5), { 0, 28, height }, { 28, 1, 7 },
|
||||
{ 4, 28, height + 2 }); // bound_box_offset_x seems to be a bug
|
||||
session, imageId.WithIndexOffset(5), { 0, 28, height },
|
||||
{ { 4, 28, height + 2 }, { 28, 1, 7 } }); // bound_box_offset_x seems to be a bug
|
||||
if (!(drawnCorners & FOOTPATH_CORNER_2))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(13), { 0, 0, height }, { 4, 4, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(13), { 0, 0, height }, { { 28, 0, height + 2 }, { 4, 4, 7 } });
|
||||
}
|
||||
break;
|
||||
|
||||
case 7:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(1), { 0, 4, height }, { 32, 1, 7 }, { 0, 4, height + 2 });
|
||||
session, imageId.WithIndexOffset(1), { 0, 4, height }, { { 0, 4, height + 2 }, { 32, 1, 7 } });
|
||||
if (!(drawnCorners & FOOTPATH_CORNER_0))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(11), { 0, 0, height }, { 4, 4, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(11), { 0, 0, height }, { { 0, 28, height + 2 }, { 4, 4, 7 } });
|
||||
}
|
||||
if (!(drawnCorners & FOOTPATH_CORNER_1))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(12), { 0, 0, height }, { 4, 4, 7 }, { 28, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(12), { 0, 0, height }, { { 28, 28, height + 2 }, { 4, 4, 7 } });
|
||||
}
|
||||
break;
|
||||
case 13:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(1), { 0, 28, height }, { 32, 1, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(1), { 0, 28, height }, { { 0, 28, height + 2 }, { 32, 1, 7 } });
|
||||
if (!(drawnCorners & FOOTPATH_CORNER_2))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(13), { 0, 0, height }, { 4, 4, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(13), { 0, 0, height }, { { 28, 0, height + 2 }, { 4, 4, 7 } });
|
||||
}
|
||||
if (!(drawnCorners & FOOTPATH_CORNER_3))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(10), { 0, 0, height }, { 4, 4, 7 }, { 0, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(10), { 0, 0, height }, { { 0, 0, height + 2 }, { 4, 4, 7 } });
|
||||
}
|
||||
break;
|
||||
case 14:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(0), { 4, 0, height }, { 1, 32, 7 }, { 4, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(0), { 4, 0, height }, { { 4, 0, height + 2 }, { 1, 32, 7 } });
|
||||
if (!(drawnCorners & FOOTPATH_CORNER_1))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(12), { 0, 0, height }, { 4, 4, 7 }, { 28, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(12), { 0, 0, height }, { { 28, 28, height + 2 }, { 4, 4, 7 } });
|
||||
}
|
||||
if (!(drawnCorners & FOOTPATH_CORNER_2))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(13), { 0, 0, height }, { 4, 4, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(13), { 0, 0, height }, { { 28, 0, height + 2 }, { 4, 4, 7 } });
|
||||
}
|
||||
break;
|
||||
case 11:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(0), { 28, 0, height }, { 1, 32, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(0), { 28, 0, height }, { { 28, 0, height + 2 }, { 1, 32, 7 } });
|
||||
if (!(drawnCorners & FOOTPATH_CORNER_0))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(11), { 0, 0, height }, { 4, 4, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(11), { 0, 0, height }, { { 0, 28, height + 2 }, { 4, 4, 7 } });
|
||||
}
|
||||
if (!(drawnCorners & FOOTPATH_CORNER_3))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(10), { 0, 0, height }, { 4, 4, 7 }, { 0, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(10), { 0, 0, height }, { { 0, 0, height + 2 }, { 4, 4, 7 } });
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -719,22 +719,22 @@ static void PathPaintFencesAndQueueBanners(
|
|||
if (!(drawnCorners & FOOTPATH_CORNER_0))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(11), { 0, 0, height }, { 4, 4, 7 }, { 0, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(11), { 0, 0, height }, { { 0, 28, height + 2 }, { 4, 4, 7 } });
|
||||
}
|
||||
if (!(drawnCorners & FOOTPATH_CORNER_1))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(12), { 0, 0, height }, { 4, 4, 7 }, { 28, 28, height + 2 });
|
||||
session, imageId.WithIndexOffset(12), { 0, 0, height }, { { 28, 28, height + 2 }, { 4, 4, 7 } });
|
||||
}
|
||||
if (!(drawnCorners & FOOTPATH_CORNER_2))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(13), { 0, 0, height }, { 4, 4, 7 }, { 28, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(13), { 0, 0, height }, { { 28, 0, height + 2 }, { 4, 4, 7 } });
|
||||
}
|
||||
if (!(drawnCorners & FOOTPATH_CORNER_3))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageId.WithIndexOffset(10), { 0, 0, height }, { 4, 4, 7 }, { 0, 0, height + 2 });
|
||||
session, imageId.WithIndexOffset(10), { 0, 0, height }, { { 0, 0, height + 2 }, { 4, 4, 7 } });
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
@ -1132,8 +1132,8 @@ void PathPaintBoxSupport(
|
|||
if (!hasSupports || !hasPassedSurface)
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageTemplate.WithIndex(surfaceBaseImageIndex), { 0, 0, height }, { boundBoxSize, 0 },
|
||||
{ boundBoxOffset, height + boundingBoxZOffset });
|
||||
session, imageTemplate.WithIndex(surfaceBaseImageIndex), { 0, 0, height },
|
||||
{ { boundBoxOffset, height + boundingBoxZOffset }, { boundBoxSize, 0 } });
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -1150,8 +1150,8 @@ void PathPaintBoxSupport(
|
|||
}
|
||||
|
||||
PaintAddImageAsParent(
|
||||
session, imageTemplate.WithIndex(bridgeBaseImageIndex), { 0, 0, height }, { boundBoxSize, 0 },
|
||||
{ boundBoxOffset, height + boundingBoxZOffset });
|
||||
session, imageTemplate.WithIndex(bridgeBaseImageIndex), { 0, 0, height },
|
||||
{ { boundBoxOffset, height + boundingBoxZOffset }, { boundBoxSize, 0 } });
|
||||
|
||||
if (pathElement.IsQueue() || (pathPaintInfo.RailingFlags & RAILING_ENTRY_FLAG_DRAW_PATH_OVER_SUPPORTS))
|
||||
{
|
||||
|
@ -1271,8 +1271,8 @@ void PathPaintPoleSupport(
|
|||
if (!hasSupports || !hasPassedSurface)
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, imageTemplate.WithIndex(surfaceBaseImageIndex), { 0, 0, height }, { boundBoxSize.x, boundBoxSize.y, 0 },
|
||||
{ boundBoxOffset.x, boundBoxOffset.y, height + boundingBoxZOffset });
|
||||
session, imageTemplate.WithIndex(surfaceBaseImageIndex), { 0, 0, height },
|
||||
{ { boundBoxOffset.x, boundBoxOffset.y, height + boundingBoxZOffset }, { boundBoxSize.x, boundBoxSize.y, 0 } });
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -1289,8 +1289,8 @@ void PathPaintPoleSupport(
|
|||
}
|
||||
|
||||
PaintAddImageAsParent(
|
||||
session, imageTemplate.WithIndex(bridgeBaseImageIndex), { 0, 0, height }, { boundBoxSize, 0 },
|
||||
{ boundBoxOffset, height + boundingBoxZOffset });
|
||||
session, imageTemplate.WithIndex(bridgeBaseImageIndex), { 0, 0, height },
|
||||
{ { boundBoxOffset, height + boundingBoxZOffset }, { boundBoxSize, 0 } });
|
||||
|
||||
if (pathElement.IsQueue() || (pathPaintInfo.RailingFlags & RAILING_ENTRY_FLAG_DRAW_PATH_OVER_SUPPORTS))
|
||||
{
|
||||
|
|
|
@ -737,8 +737,8 @@ static void ViewportSurfaceDrawTileSideBottom(
|
|||
|
||||
auto imageId = GetTunnelImage(edgeStyle, tunnelType, edge);
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { offset, zOffset }, { tunnelBounds.x, tunnelBounds.y, boundBoxLength - 1 },
|
||||
{ 0, 0, boundBoxOffsetZ });
|
||||
session, imageId, { offset, zOffset },
|
||||
{ { 0, 0, boundBoxOffsetZ }, { tunnelBounds.x, tunnelBounds.y, boundBoxLength - 1 } });
|
||||
|
||||
boundBoxOffsetZ = curHeight * COORDS_Z_PER_TINY_Z;
|
||||
boundBoxLength = _tunnelHeights[tunnelType][1] * 16;
|
||||
|
@ -752,8 +752,8 @@ static void ViewportSurfaceDrawTileSideBottom(
|
|||
imageId = GetTunnelImage(edgeStyle, tunnelType, edge).WithIndexOffset(1);
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { offset, curHeight * COORDS_Z_PER_TINY_Z },
|
||||
{ tunnelBounds.x, tunnelBounds.y, boundBoxLength - 1 },
|
||||
{ tunnelTopBoundBoxOffset.x, tunnelTopBoundBoxOffset.y, boundBoxOffsetZ });
|
||||
{ { tunnelTopBoundBoxOffset.x, tunnelTopBoundBoxOffset.y, boundBoxOffsetZ },
|
||||
{ tunnelBounds.x, tunnelBounds.y, boundBoxLength - 1 } });
|
||||
|
||||
curHeight += _tunnelHeights[tunnelType][0];
|
||||
tunnelIndex++;
|
||||
|
@ -1100,10 +1100,10 @@ void PaintSurface(PaintSession& session, uint8_t direction, uint16_t height, con
|
|||
if (session.VerticalTunnelHeight * COORDS_Z_PER_TINY_Z == height)
|
||||
{
|
||||
// Vertical tunnels
|
||||
PaintAddImageAsParent(session, ImageId(1575), { 0, 0, height }, { 1, 30, 39 }, { -2, 1, height - 40 });
|
||||
PaintAddImageAsParent(session, ImageId(1576), { 0, 0, height }, { 30, 1, 0 }, { 1, 31, height });
|
||||
PaintAddImageAsParent(session, ImageId(1577), { 0, 0, height }, { 1, 30, 0 }, { 31, 1, height });
|
||||
PaintAddImageAsParent(session, ImageId(1578), { 0, 0, height }, { 30, 1, 39 }, { 1, -2, height - 40 });
|
||||
PaintAddImageAsParent(session, ImageId(1575), { 0, 0, height }, { { -2, 1, height - 40 }, { 1, 30, 39 } });
|
||||
PaintAddImageAsParent(session, ImageId(1576), { 0, 0, height }, { { 1, 31, height }, { 30, 1, 0 } });
|
||||
PaintAddImageAsParent(session, ImageId(1577), { 0, 0, height }, { { 31, 1, height }, { 1, 30, 0 } });
|
||||
PaintAddImageAsParent(session, ImageId(1578), { 0, 0, height }, { { 1, -2, height - 40 }, { 30, 1, 39 } });
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -1409,8 +1409,8 @@ void PaintSurface(PaintSession& session, uint8_t direction, uint16_t height, con
|
|||
}
|
||||
|
||||
PaintAddImageAsParent(
|
||||
session, ImageId(image_id), { fenceData.offset, local_height }, { fenceData.Boundbox.length, 9 },
|
||||
{ fenceData.Boundbox.offset, local_height + 1 });
|
||||
session, ImageId(image_id), { fenceData.offset, local_height },
|
||||
{ { fenceData.Boundbox.offset, local_height + 1 }, { fenceData.Boundbox.length, 9 } });
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -181,7 +181,7 @@ static void PaintTileElementBase(PaintSession& session, const CoordsXY& origCoor
|
|||
session.SpritePosition.y = coords.y;
|
||||
session.InteractionType = ViewportInteractionItem::None;
|
||||
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, arrowZ }, { 32, 32, -1 }, { 0, 0, arrowZ + 18 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, arrowZ }, { { 0, 0, arrowZ + 18 }, { 32, 32, -1 } });
|
||||
}
|
||||
|
||||
if (screenMinY + 52 <= dpi->y)
|
||||
|
@ -332,8 +332,8 @@ static void PaintTileElementBase(PaintSession& session, const CoordsXY& origCoor
|
|||
int32_t xOffset = static_cast<int32_t>(sy) * 10;
|
||||
int32_t yOffset = -22 + static_cast<int32_t>(sx) * 10;
|
||||
PaintStruct* ps = PaintAddImageAsParent(
|
||||
session, imageColourFlats, { xOffset, yOffset, segmentHeight }, { 10, 10, 1 },
|
||||
{ xOffset + 1, yOffset + 16, segmentHeight });
|
||||
session, imageColourFlats, { xOffset, yOffset, segmentHeight },
|
||||
{ { xOffset + 1, yOffset + 16, segmentHeight }, { 10, 10, 1 } });
|
||||
if (ps != nullptr)
|
||||
{
|
||||
ps->image_id = ps->image_id.WithTertiary(COLOUR_BORDEAUX_RED);
|
||||
|
|
|
@ -288,7 +288,7 @@ void TrackPaintUtilPaintFloor(
|
|||
imageId = floorSprites[3];
|
||||
}
|
||||
|
||||
PaintAddImageAsParent(session, colourFlags.WithIndex(imageId), { 0, 0, height }, { 32, 32, 1 }, { 0, 0, height });
|
||||
PaintAddImageAsParent(session, colourFlags.WithIndex(imageId), { 0, 0, height }, { { 0, 0, height }, { 32, 32, 1 } });
|
||||
}
|
||||
|
||||
void TrackPaintUtilPaintFences(
|
||||
|
@ -313,7 +313,7 @@ void TrackPaintUtilPaintFences(
|
|||
if (edges & EDGE_SW && TrackPaintUtilHasFence(EDGE_SW, position, trackElement, ride, rotation))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, colourFlags.WithIndex(fenceSprites[2]), { 0, 0, height }, { 1, 32, 7 }, { 30, 0, height + 2 });
|
||||
session, colourFlags.WithIndex(fenceSprites[2]), { 0, 0, height }, { { 30, 0, height + 2 }, { 1, 32, 7 } });
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -894,7 +894,7 @@ void TrackPaintUtilDrawPier(
|
|||
hasFence = TrackPaintUtilHasFence(EDGE_NE, position, trackElement, ride, session.CurrentRotation);
|
||||
imageId = session.TrackColours[SCHEME_SUPPORTS].WithIndex(
|
||||
(hasFence ? SPR_STATION_PIER_EDGE_NE_FENCED : SPR_STATION_PIER_EDGE_NE));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 6, 32, 1 }, { 2, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 2, 0, height }, { 6, 32, 1 } });
|
||||
TrackPaintUtilDrawStationCovers(session, EDGE_NE, hasFence, stationObj, height);
|
||||
|
||||
imageId = session.TrackColours[SCHEME_SUPPORTS].WithIndex(SPR_STATION_PIER_EDGE_SW);
|
||||
|
@ -913,7 +913,7 @@ void TrackPaintUtilDrawPier(
|
|||
hasFence = TrackPaintUtilHasFence(EDGE_NW, position, trackElement, ride, rotation);
|
||||
imageId = session.TrackColours[SCHEME_SUPPORTS].WithIndex(
|
||||
(hasFence ? SPR_STATION_PIER_EDGE_NW_FENCED : SPR_STATION_PIER_EDGE_NW));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 6, 1 }, { 0, 2, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 2, height }, { 32, 6, 1 } });
|
||||
TrackPaintUtilDrawStationCovers(session, EDGE_NW, hasFence, stationObj, height);
|
||||
|
||||
imageId = session.TrackColours[SCHEME_SUPPORTS].WithIndex(SPR_STATION_PIER_EDGE_SE);
|
||||
|
@ -1021,8 +1021,8 @@ void TrackPaintUtilRightHelixUpSmallQuarterTilesPaint(
|
|||
CoordsXYZ boundsOffset = (boundsOffsets == nullptr ? CoordsXYZ(offset, 0) : boundsOffsets[direction][index][0]);
|
||||
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { offset, height }, { boundsLength, thickness[0] },
|
||||
{ boundsOffset.x, boundsOffset.y, height + boundsOffset.z });
|
||||
session, imageId, { offset, height },
|
||||
{ { boundsOffset.x, boundsOffset.y, height + boundsOffset.z }, { boundsLength, thickness[0] } });
|
||||
}
|
||||
if (sprites[direction][index][1] != 0)
|
||||
{
|
||||
|
@ -1032,8 +1032,8 @@ void TrackPaintUtilRightHelixUpSmallQuarterTilesPaint(
|
|||
CoordsXYZ boundsOffset = (boundsOffsets == nullptr ? CoordsXYZ(offset, 0) : boundsOffsets[direction][index][1]);
|
||||
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { offset, height }, { boundsLength, thickness[1] },
|
||||
{ boundsOffset.x, boundsOffset.y, height + boundsOffset.z });
|
||||
session, imageId, { offset, height },
|
||||
{ { boundsOffset.x, boundsOffset.y, height + boundsOffset.z }, { boundsLength, thickness[1] } });
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1121,8 +1121,8 @@ void TrackPaintUtilRightHelixUpLargeQuarterTilesPaint(
|
|||
CoordsXYZ boundsOffset = (boundsOffsets == nullptr ? CoordsXYZ(offset, 0) : boundsOffsets[direction][index][0]);
|
||||
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { offset, height }, { boundsLength, thickness[0] },
|
||||
{ boundsOffset.x, boundsOffset.y, height + boundsOffset.z });
|
||||
session, imageId, { offset, height },
|
||||
{ { boundsOffset.x, boundsOffset.y, height + boundsOffset.z }, { boundsLength, thickness[0] } });
|
||||
}
|
||||
if (sprites[direction][index][1] != 0)
|
||||
{
|
||||
|
@ -1132,8 +1132,8 @@ void TrackPaintUtilRightHelixUpLargeQuarterTilesPaint(
|
|||
CoordsXYZ boundsOffset = (boundsOffsets == nullptr ? CoordsXYZ(offset, 0) : boundsOffsets[direction][index][1]);
|
||||
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { offset, height }, { boundsLength, thickness[1] },
|
||||
{ boundsOffset.x, boundsOffset.y, height + boundsOffset.z });
|
||||
session, imageId, { offset, height },
|
||||
{ { boundsOffset.x, boundsOffset.y, height + boundsOffset.z }, { boundsLength, thickness[1] } });
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1296,8 +1296,9 @@ void TrackPaintUtilEighthToDiagTilesPaint(
|
|||
CoordsXYZ boundsOffset = (boundsOffsets == nullptr ? CoordsXYZ(offset, 0) : boundsOffsets[direction][index]);
|
||||
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { offset.x, offset.y, height }, { boundsLength.x, boundsLength.y, thickness[direction][index] },
|
||||
{ boundsOffset.x, boundsOffset.y, height + boundsOffset.z });
|
||||
session, imageId, { offset.x, offset.y, height },
|
||||
{ { boundsOffset.x, boundsOffset.y, height + boundsOffset.z },
|
||||
{ boundsLength.x, boundsLength.y, thickness[direction][index] } });
|
||||
}
|
||||
|
||||
constexpr CoordsXY defaultDiagTileOffsets[4] = {
|
||||
|
@ -1338,8 +1339,8 @@ void TrackPaintUtilDiagTilesPaint(
|
|||
CoordsXYZ boundsOffset = (boundsOffsets == nullptr ? CoordsXYZ(offset, 0) : boundsOffsets[direction]);
|
||||
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { offset, height }, { boundsLength, thickness },
|
||||
{ boundsOffset.x, boundsOffset.y, height + boundsOffset.z });
|
||||
session, imageId, { offset, height },
|
||||
{ { boundsOffset.x, boundsOffset.y, height + boundsOffset.z }, { boundsLength, thickness } });
|
||||
}
|
||||
|
||||
const uint8_t mapLeftQuarterTurn5TilesToRightQuarterTurn5Tiles[] = {
|
||||
|
@ -1461,7 +1462,7 @@ void TrackPaintUtilRightQuarterTurn5TilesPaint(
|
|||
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { static_cast<int8_t>(offset.x), static_cast<int8_t>(offset.y), height },
|
||||
{ boundsLength.x, boundsLength.y, thickness }, { boundsOffset.x, boundsOffset.y, height + boundsOffset.z });
|
||||
{ { boundsOffset.x, boundsOffset.y, height + boundsOffset.z }, { boundsLength.x, boundsLength.y, thickness } });
|
||||
}
|
||||
|
||||
void TrackPaintUtilRightQuarterTurn5TilesPaint2(
|
||||
|
@ -1479,8 +1480,8 @@ void TrackPaintUtilRightQuarterTurn5TilesPaint2(
|
|||
const auto& offset = spriteBB->offset;
|
||||
const auto& bbOffset = spriteBB->bb_offset;
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { offset.x, offset.y, height + offset.z }, spriteBB->bb_size,
|
||||
{ bbOffset.x, bbOffset.y, height + bbOffset.z });
|
||||
session, imageId, { offset.x, offset.y, height + offset.z },
|
||||
{ { bbOffset.x, bbOffset.y, height + bbOffset.z }, spriteBB->bb_size });
|
||||
}
|
||||
|
||||
void TrackPaintUtilRightQuarterTurn5TilesPaint3(
|
||||
|
@ -1636,8 +1637,8 @@ void TrackPaintUtilRightQuarterTurn3TilesPaint(
|
|||
CoordsXYZ boundsOffset = (boundsOffsets == nullptr ? CoordsXYZ(offset, 0) : boundsOffsets[direction][index]);
|
||||
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { offset, height }, { boundsLength.x, boundsLength.y, thickness },
|
||||
{ boundsOffset.x, boundsOffset.y, height + boundsOffset.z });
|
||||
session, imageId, { offset, height },
|
||||
{ { boundsOffset.x, boundsOffset.y, height + boundsOffset.z }, { boundsLength.x, boundsLength.y, thickness } });
|
||||
}
|
||||
|
||||
void TrackPaintUtilRightQuarterTurn3TilesPaint2(
|
||||
|
@ -1667,15 +1668,15 @@ void TrackPaintUtilRightQuarterTurn3TilesPaint2WithHeightOffset(
|
|||
{
|
||||
case 0:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 32, 20, thickness }, { 0, 6, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 0, 6, height + heightOffset }, { 32, 20, thickness } });
|
||||
break;
|
||||
case 2:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 16, 16, thickness }, { 16, 16, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 16, 16, height + heightOffset }, { 16, 16, thickness } });
|
||||
break;
|
||||
case 3:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 20, 32, thickness }, { 6, 0, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 6, 0, height + heightOffset }, { 20, 32, thickness } });
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -1685,15 +1686,15 @@ void TrackPaintUtilRightQuarterTurn3TilesPaint2WithHeightOffset(
|
|||
{
|
||||
case 0:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 20, 32, thickness }, { 6, 0, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 6, 0, height + heightOffset }, { 20, 32, thickness } });
|
||||
break;
|
||||
case 2:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 16, 16, thickness }, { 16, 0, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 16, 0, height + heightOffset }, { 16, 16, thickness } });
|
||||
break;
|
||||
case 3:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 32, 20, thickness }, { 0, 6, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 0, 6, height + heightOffset }, { 32, 20, thickness } });
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -1703,15 +1704,15 @@ void TrackPaintUtilRightQuarterTurn3TilesPaint2WithHeightOffset(
|
|||
{
|
||||
case 0:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 32, 20, thickness }, { 0, 6, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 0, 6, height + heightOffset }, { 32, 20, thickness } });
|
||||
break;
|
||||
case 2:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 16, 16, thickness }, { 0, 0, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 0, 0, height + heightOffset }, { 16, 16, thickness } });
|
||||
break;
|
||||
case 3:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 20, 32, thickness }, { 6, 0, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 6, 0, height + heightOffset }, { 20, 32, thickness } });
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -1721,15 +1722,15 @@ void TrackPaintUtilRightQuarterTurn3TilesPaint2WithHeightOffset(
|
|||
{
|
||||
case 0:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 20, 32, thickness }, { 6, 0, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 6, 0, height + heightOffset }, { 20, 32, thickness } });
|
||||
break;
|
||||
case 2:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 16, 16, thickness }, { 0, 16, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 0, 16, height + heightOffset }, { 16, 16, thickness } });
|
||||
break;
|
||||
case 3:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 32, 20, thickness }, { 0, 6, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 0, 6, height + heightOffset }, { 32, 20, thickness } });
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -1749,8 +1750,8 @@ void TrackPaintUtilRightQuarterTurn3TilesPaint3(
|
|||
const auto& offset = spriteBB->offset;
|
||||
const auto& bbOffset = spriteBB->bb_offset;
|
||||
PaintAddImageAsParent(
|
||||
session, colourFlags.WithIndex(spriteBB->sprite_id), { offset.x, offset.y, offset.z + height }, spriteBB->bb_size,
|
||||
{ bbOffset.x, bbOffset.y, height + bbOffset.z });
|
||||
session, colourFlags.WithIndex(spriteBB->sprite_id), { offset.x, offset.y, offset.z + height },
|
||||
{ { bbOffset.x, bbOffset.y, height + bbOffset.z }, spriteBB->bb_size });
|
||||
}
|
||||
|
||||
void TrackPaintUtilRightQuarterTurn3TilesPaint4(
|
||||
|
@ -1869,15 +1870,15 @@ void TrackPaintUtilLeftQuarterTurn3TilesPaintWithHeightOffset(
|
|||
{
|
||||
case 0:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 32, 20, thickness }, { 0, 6, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 0, 6, height + heightOffset }, { 32, 20, thickness } });
|
||||
break;
|
||||
case 2:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 16, 16, thickness }, { 16, 0, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 16, 0, height + heightOffset }, { 16, 16, thickness } });
|
||||
break;
|
||||
case 3:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 20, 32, thickness }, { 6, 0, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 6, 0, height + heightOffset }, { 20, 32, thickness } });
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -1887,15 +1888,15 @@ void TrackPaintUtilLeftQuarterTurn3TilesPaintWithHeightOffset(
|
|||
{
|
||||
case 0:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 20, 32, thickness }, { 6, 0, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 6, 0, height + heightOffset }, { 20, 32, thickness } });
|
||||
break;
|
||||
case 2:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 16, 16, thickness }, { 0, 0, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 0, 0, height + heightOffset }, { 16, 16, thickness } });
|
||||
break;
|
||||
case 3:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 32, 20, thickness }, { 0, 6, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 0, 6, height + heightOffset }, { 32, 20, thickness } });
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -1905,15 +1906,15 @@ void TrackPaintUtilLeftQuarterTurn3TilesPaintWithHeightOffset(
|
|||
{
|
||||
case 0:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 32, 20, thickness }, { 0, 6, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 0, 6, height + heightOffset }, { 32, 20, thickness } });
|
||||
break;
|
||||
case 2:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 16, 16, thickness }, { 0, 16, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 0, 16, height + heightOffset }, { 16, 16, thickness } });
|
||||
break;
|
||||
case 3:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 20, 32, thickness }, { 6, 0, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 6, 0, height + heightOffset }, { 20, 32, thickness } });
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -1923,15 +1924,15 @@ void TrackPaintUtilLeftQuarterTurn3TilesPaintWithHeightOffset(
|
|||
{
|
||||
case 0:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 20, 32, thickness }, { 6, 0, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 6, 0, height + heightOffset }, { 20, 32, thickness } });
|
||||
break;
|
||||
case 2:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 16, 16, thickness }, { 16, 16, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 16, 16, height + heightOffset }, { 16, 16, thickness } });
|
||||
break;
|
||||
case 3:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 32, 20, thickness }, { 0, 6, height + heightOffset });
|
||||
session, imageId, { 0, 0, height }, { { 0, 6, height + heightOffset }, { 32, 20, thickness } });
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
@ -1972,19 +1973,19 @@ void TrackPaintUtilLeftQuarterTurn1TilePaint(
|
|||
{
|
||||
case 0:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 26, 24, thickness }, { 6, 2, height + boundBoxZOffset });
|
||||
session, imageId, { 0, 0, height }, { { 6, 2, height + boundBoxZOffset }, { 26, 24, thickness } });
|
||||
break;
|
||||
case 1:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 26, 26, thickness }, { 0, 0, height + boundBoxZOffset });
|
||||
session, imageId, { 0, 0, height }, { { 0, 0, height + boundBoxZOffset }, { 26, 26, thickness } });
|
||||
break;
|
||||
case 2:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 24, 26, thickness }, { 2, 6, height + boundBoxZOffset });
|
||||
session, imageId, { 0, 0, height }, { { 2, 6, height + boundBoxZOffset }, { 24, 26, thickness } });
|
||||
break;
|
||||
case 3:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { 24, 24, thickness }, { 6, 6, height + boundBoxZOffset });
|
||||
session, imageId, { 0, 0, height }, { { 6, 6, height + boundBoxZOffset }, { 24, 24, thickness } });
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -2040,11 +2041,11 @@ void TrackPaintUtilSpinningTunnelPaint(PaintSession& session, int8_t thickness,
|
|||
imageId = colourFlags.WithIndex(trackSpritesGhostTrainSpinningTunnel[direction & 1][1][frame]);
|
||||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 26, 1, 23 }, { 4, 28, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 4, 28, height }, { 26, 1, 23 } });
|
||||
}
|
||||
else
|
||||
{
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 26, 23 }, { 28, 4, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 28, 4, height }, { 1, 26, 23 } });
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2200,7 +2201,7 @@ void PaintTrack(PaintSession& session, Direction direction, int32_t height, cons
|
|||
auto heightNum = (height + 8) / 16 - gMapBaseZ;
|
||||
auto imageId = ImageId(SPR_HEIGHT_MARKER_BASE + GetHeightMarkerOffset() + heightNum, COLOUR_LIGHT_BLUE);
|
||||
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height + ax + 3 }, { 1, 1, 0 }, { 1000, 1000, 2047 });
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height + ax + 3 }, { { 1000, 1000, 2047 }, { 1, 1, 0 } });
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -996,8 +996,8 @@ static void vehicle_sprite_paint(
|
|||
imageId = ImageId(baseImageId).WithRemap(FilterPaletteID::Palette44);
|
||||
}
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, z }, { bb.length_x, bb.length_y, bb.length_z },
|
||||
{ bb.offset_x, bb.offset_y, bb.offset_z + z });
|
||||
session, imageId, { 0, 0, z },
|
||||
{ { bb.offset_x, bb.offset_y, bb.offset_z + z }, { bb.length_x, bb.length_y, bb.length_z } });
|
||||
|
||||
auto* dpi = &session.DPI;
|
||||
if (dpi->zoom_level < ZoomLevel{ 2 } && vehicle->num_peeps > 0 && carEntry->no_seating_rows > 0)
|
||||
|
@ -3674,7 +3674,7 @@ void Vehicle::Paint(PaintSession& session, int32_t imageDirection) const
|
|||
if (HasFlag(VehicleFlags::Crashed))
|
||||
{
|
||||
PaintAddImageAsParent(
|
||||
session, ImageId(SPR_WATER_PARTICLES_DENSE_0 + animation_frame), { 0, 0, z }, { 1, 1, 0 }, { 0, 0, z + 2 });
|
||||
session, ImageId(SPR_WATER_PARTICLES_DENSE_0 + animation_frame), { 0, 0, z }, { { 0, 0, z + 2 }, { 1, 1, 0 } });
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -202,13 +202,13 @@ static void PaintReverseFreefallRCFlat(
|
|||
if (direction & 1)
|
||||
{
|
||||
auto imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_REVERSE_FREEFALL_RC_FLAT_NW_SE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 1 }, { 6, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 6, 0, height }, { 20, 32, 1 } });
|
||||
PaintUtilPushTunnelRight(session, height, TUNNEL_SQUARE_FLAT);
|
||||
}
|
||||
else
|
||||
{
|
||||
auto imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_REVERSE_FREEFALL_RC_FLAT_SW_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 1 }, { 0, 6, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 6, height }, { 32, 20, 1 } });
|
||||
PaintUtilPushTunnelLeft(session, height, TUNNEL_SQUARE_FLAT);
|
||||
}
|
||||
|
||||
|
@ -227,7 +227,7 @@ static void PaintReverseFreefallRCStation(
|
|||
{
|
||||
// height -= 2 (height - 2)
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SPR_STATION_BASE_B_SW_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 32, 28, 1 }, { 0, 2, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { { 0, 2, height }, { 32, 28, 1 } });
|
||||
// height += 2 (height)
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(reverse_freefall_rc_track_pieces_station[direction]);
|
||||
|
@ -240,7 +240,7 @@ static void PaintReverseFreefallRCStation(
|
|||
{
|
||||
// height -= 2 (height - 2)
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SPR_STATION_BASE_B_NW_SE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 28, 32, 1 }, { 2, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { { 2, 0, height }, { 28, 32, 1 } });
|
||||
// height += 2 (height)
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(reverse_freefall_rc_track_pieces_station[direction]);
|
||||
|
@ -321,7 +321,7 @@ static void PaintReverseFreefallRCSlope(
|
|||
{
|
||||
floorImageId = session.TrackColours[SCHEME_SUPPORTS].WithIndex(SPR_FLOOR_PLANKS);
|
||||
}
|
||||
PaintAddImageAsParent(session, floorImageId, { 0, 0, height }, { 26, 26, 126 }, { 3, 3, height });
|
||||
PaintAddImageAsParent(session, floorImageId, { 0, 0, height }, { { 3, 3, height }, { 26, 26, 126 } });
|
||||
PaintAddImageAsChildRotated(
|
||||
session, direction, supportsImageId, { 0, 0, height }, { isDirection03 ? 26 : 18, 26, 126 },
|
||||
{ isDirection03 ? 3 : 11, 3, height });
|
||||
|
@ -367,7 +367,7 @@ static void PaintReverseFreefallRCVertical(
|
|||
case 0:
|
||||
supportsImageId = session.TrackColours[SCHEME_SUPPORTS].WithIndex(
|
||||
reverse_freefall_rc_track_pieces_vertical_supports[direction]);
|
||||
PaintAddImageAsParent(session, supportsImageId, { 0, 0, height }, { 26, 26, 79 }, { 3, 3, height });
|
||||
PaintAddImageAsParent(session, supportsImageId, { 0, 0, height }, { { 3, 3, height }, { 26, 26, 79 } });
|
||||
PaintUtilSetSegmentSupportHeight(session, SEGMENTS_ALL, 0xFFFF, 0);
|
||||
PaintUtilSetGeneralSupportHeight(session, height + 80, 0x20);
|
||||
break;
|
||||
|
|
|
@ -233,12 +233,12 @@ static void PaintVirginiaReelTrackFlat(
|
|||
auto imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction]);
|
||||
if (direction & 1)
|
||||
{
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 27, 32, 2 }, { 2, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 2, 0, height }, { 27, 32, 2 } });
|
||||
PaintUtilPushTunnelRight(session, height, TUNNEL_SQUARE_FLAT);
|
||||
}
|
||||
else
|
||||
{
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 27, 2 }, { 0, 2, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 2, height }, { 32, 27, 2 } });
|
||||
PaintUtilPushTunnelLeft(session, height, TUNNEL_SQUARE_FLAT);
|
||||
}
|
||||
|
||||
|
@ -264,11 +264,11 @@ static void PaintVirginiaReelTrack25DegUp(
|
|||
|
||||
if (direction & 1)
|
||||
{
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 27, 32, 2 }, { 2, 0, height });
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 2, 0, height }, { 27, 32, 2 } });
|
||||
}
|
||||
else
|
||||
{
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 27, 2 }, { 0, 2, height });
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 2, height }, { 32, 27, 2 } });
|
||||
}
|
||||
|
||||
if (direction == 1 || direction == 2)
|
||||
|
@ -316,27 +316,27 @@ static void PaintVirginiaReelTrackFlatTo25DegUp(
|
|||
switch (direction)
|
||||
{
|
||||
case 0:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 27, 2 }, { 0, 2, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 2, height }, { 32, 27, 2 } });
|
||||
|
||||
WoodenASupportsPaintSetup(session, 0, 1, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
PaintUtilPushTunnelLeft(session, height, TUNNEL_SQUARE_FLAT);
|
||||
break;
|
||||
case 1:
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 27, 32, 2 }, { 2, 0, height });
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 2, 0, height }, { 27, 32, 2 } });
|
||||
session.WoodenSupportsPrependTo = ps;
|
||||
|
||||
WoodenASupportsPaintSetup(session, 1, 2, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
PaintUtilPushTunnelRight(session, height, TUNNEL_SQUARE_8);
|
||||
break;
|
||||
case 2:
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 27, 2 }, { 0, 2, height });
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 2, height }, { 32, 27, 2 } });
|
||||
session.WoodenSupportsPrependTo = ps;
|
||||
|
||||
WoodenASupportsPaintSetup(session, 0, 3, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
PaintUtilPushTunnelLeft(session, height, TUNNEL_SQUARE_8);
|
||||
break;
|
||||
case 3:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 27, 32, 2 }, { 2, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 2, 0, height }, { 27, 32, 2 } });
|
||||
|
||||
WoodenASupportsPaintSetup(session, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
PaintUtilPushTunnelRight(session, height, TUNNEL_SQUARE_FLAT);
|
||||
|
@ -363,11 +363,11 @@ static void PaintVirginiaReelTrack25DegUpToFlat(
|
|||
|
||||
if (direction & 1)
|
||||
{
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 27, 32, 2 }, { 2, 0, height });
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 2, 0, height }, { 27, 32, 2 } });
|
||||
}
|
||||
else
|
||||
{
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 27, 2 }, { 0, 2, height });
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 2, height }, { 32, 27, 2 } });
|
||||
}
|
||||
|
||||
if (direction == 1 || direction == 2)
|
||||
|
@ -433,7 +433,7 @@ static void PaintVirginiaReelStation(
|
|||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SPR_STATION_BASE_B_SW_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 32, 28, 2 }, { 0, 2, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { { 0, 2, height }, { 32, 28, 2 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_VIRGINIA_REEL_FLAT_SW_NE);
|
||||
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { { 0, 0, height }, { 32, 20, 2 } });
|
||||
|
@ -443,7 +443,7 @@ static void PaintVirginiaReelStation(
|
|||
else if (direction == 1 || direction == 3)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SPR_STATION_BASE_B_NW_SE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 28, 32, 2 }, { 2, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { { 2, 0, height }, { 28, 32, 2 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_VIRGINIA_REEL_FLAT_NW_SE);
|
||||
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { { 0, 0, height }, { 20, 32, 2 } });
|
||||
|
|
|
@ -730,16 +730,16 @@ static void WildMouseTrackLeftQuarterTurn1(
|
|||
switch (direction)
|
||||
{
|
||||
case 0:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 26, 24, 2 }, { 6, 2, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 6, 2, height }, { 26, 24, 2 } });
|
||||
break;
|
||||
case 1:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 26, 26, 2 });
|
||||
break;
|
||||
case 2:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 26, 2 }, { 2, 6, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 2, 6, height }, { 24, 26, 2 } });
|
||||
break;
|
||||
case 3:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 24, 2 }, { 6, 6, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 6, 6, height }, { 24, 24, 2 } });
|
||||
break;
|
||||
}
|
||||
MetalASupportsPaintSetup(session, METAL_SUPPORTS_TUBES, 4, -1, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
|
|
|
@ -62,8 +62,8 @@ template<bool isClassic> void WoodenRCTrackPaintBb(PaintSession& session, const
|
|||
|
||||
ImageId imageId = WoodenRCGetTrackColour<isClassic>(session).WithIndex(bb->sprite_id_a);
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { bb->offset.x, bb->offset.y, height + bb->offset.z }, bb->bb_size,
|
||||
{ bb->bb_offset.x, bb->bb_offset.y, height + bb->bb_offset.z });
|
||||
session, imageId, { bb->offset.x, bb->offset.y, height + bb->offset.z },
|
||||
{ { bb->bb_offset.x, bb->bb_offset.y, height + bb->bb_offset.z }, bb->bb_size });
|
||||
if (bb->sprite_id_b != 0)
|
||||
{
|
||||
ImageId railsImageId = WoodenRCGetRailsColour(session).WithIndex(bb->sprite_id_b);
|
||||
|
|
|
@ -563,13 +563,13 @@ static void WoodenWildMouseTrackLeftQuarterTurn1(
|
|||
switch (direction)
|
||||
{
|
||||
case 0:
|
||||
PaintAddImageAsParent(session, imageId, { 6, 0, height }, { 26, 24, 1 }, { 6, 2, height });
|
||||
PaintAddImageAsParent(session, imageId, { 6, 0, height }, { { 6, 2, height }, { 26, 24, 1 } });
|
||||
break;
|
||||
case 1:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 26, 26, 1 });
|
||||
break;
|
||||
case 2:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 6, height }, { 24, 26, 1 }, { 2, 6, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 6, height }, { { 2, 6, height }, { 24, 26, 1 } });
|
||||
break;
|
||||
case 3:
|
||||
PaintAddImageAsParent(session, imageId, { 6, 6, height }, { 24, 24, 1 });
|
||||
|
|
|
@ -503,10 +503,10 @@ static void PaintMiniGolfTrackFlat(
|
|||
else
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SprMiniGolfFlatFenceBackSwNe);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 7 }, { 0, 10, height + 2 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 10, height + 2 }, { 32, 1, 7 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SprMiniGolfFlatFenceFrontSwNe);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 7 }, { 0, 22, height + 2 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 22, height + 2 }, { 32, 1, 7 } });
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -672,14 +672,14 @@ static void PaintMiniGolfStation(
|
|||
if (hasFence)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SprMiniGolfFlatFenceBackNwSe);
|
||||
PaintAddImageAsParent(session, imageId, { -10, 0, height }, { 1, 32, 7 }, { 0, 0, height + 2 });
|
||||
PaintAddImageAsParent(session, imageId, { -10, 0, height }, { { 0, 0, height + 2 }, { 1, 32, 7 } });
|
||||
}
|
||||
|
||||
bool hasSWFence = TrackPaintUtilHasFence(EDGE_SW, session.MapPosition, trackElement, ride, session.CurrentRotation);
|
||||
if (hasSWFence)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SprMiniGolfFlatFenceFrontNwSe);
|
||||
PaintAddImageAsParent(session, imageId, { 10, 0, height }, { 1, 32, 7 }, { 31, 0, height + 2 });
|
||||
PaintAddImageAsParent(session, imageId, { 10, 0, height }, { { 31, 0, height + 2 }, { 1, 32, 7 } });
|
||||
}
|
||||
|
||||
TrackPaintUtilDrawStationCovers(session, EDGE_NE, hasFence, stationObj, height);
|
||||
|
@ -694,14 +694,14 @@ static void PaintMiniGolfStation(
|
|||
if (hasFence)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SprMiniGolfFlatFenceBackSwNe);
|
||||
PaintAddImageAsParent(session, imageId, { 0, -10, height }, { 32, 1, 7 }, { 0, 0, height + 2 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, -10, height }, { { 0, 0, height + 2 }, { 32, 1, 7 } });
|
||||
}
|
||||
|
||||
bool hasSEFence = TrackPaintUtilHasFence(EDGE_SE, session.MapPosition, trackElement, ride, session.CurrentRotation);
|
||||
if (hasSEFence)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SprMiniGolfFlatFenceFrontSwNe);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 10, height }, { 32, 1, 7 }, { 0, 31, height + 2 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 10, height }, { { 0, 31, height + 2 }, { 32, 1, 7 } });
|
||||
}
|
||||
|
||||
TrackPaintUtilDrawStationCovers(session, EDGE_NW, hasFence, stationObj, height);
|
||||
|
@ -784,11 +784,11 @@ static void PaintMiniGolfTrackLeftQuarterTurn1Tile(
|
|||
{
|
||||
case 0:
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SprMiniGolfQuarterTurn1TileFenceInsideSwNw);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 5, 5, 5 }, { 24, 0, height + 2 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 24, 0, height + 2 }, { 5, 5, 5 } });
|
||||
break;
|
||||
case 2:
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SprMiniGolfQuarterTurn1TileFenceInsideNeSe);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 5, 5, 5 }, { 0, 24, height + 2 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 24, height + 2 }, { 5, 5, 5 } });
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -914,16 +914,16 @@ static void PaintMiniGolfHoleC(
|
|||
{
|
||||
case 0x01:
|
||||
case 0x20:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 26, 3 }, { 30, 3, height + 4 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 30, 3, height + 4 }, { 2, 26, 3 } });
|
||||
break;
|
||||
case 0x10:
|
||||
case 0x31:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 26, 2, 3 }, { 3, 30, height + 4 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 3, 30, height + 4 }, { 26, 2, 3 } });
|
||||
break;
|
||||
default:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { boundBox.x, boundBox.y, 0 },
|
||||
{ boundBoxOffset.x, boundBoxOffset.y, height + 24 });
|
||||
session, imageId, { 0, 0, height },
|
||||
{ { boundBoxOffset.x, boundBoxOffset.y, height + 24 }, { boundBox.x, boundBox.y, 0 } });
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -990,22 +990,22 @@ static void PaintMiniGolfHoleD(
|
|||
{
|
||||
case 0x01:
|
||||
case 0x32:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 26, 3 }, { 30, 3, height + 4 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 30, 3, height + 4 }, { 2, 26, 3 } });
|
||||
break;
|
||||
case 0x02:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 23, 2, 3 }, { 3, 30, height + 4 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 3, 30, height + 4 }, { 23, 2, 3 } });
|
||||
break;
|
||||
case 0x10:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 24, 3 }, { 30, 3, height + 4 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 30, 3, height + 4 }, { 2, 24, 3 } });
|
||||
break;
|
||||
case 0x20:
|
||||
case 0x31:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 26, 2, 3 }, { 3, 30, height + 4 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 3, 30, height + 4 }, { 26, 2, 3 } });
|
||||
break;
|
||||
default:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { boundBox.x, boundBox.y, 0 },
|
||||
{ boundBoxOffset.x, boundBoxOffset.y, height + 24 });
|
||||
session, imageId, { 0, 0, height },
|
||||
{ { boundBoxOffset.x, boundBoxOffset.y, height + 24 }, { boundBox.x, boundBox.y, 0 } });
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -1082,23 +1082,23 @@ static void PaintMiniGolfHoleE(
|
|||
switch ((direction << 4) | trackSequence)
|
||||
{
|
||||
case 0x01:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 26, 3 }, { 30, 3, height + 4 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 30, 3, height + 4 }, { 2, 26, 3 } });
|
||||
break;
|
||||
case 0x02:
|
||||
case 0x20:
|
||||
case 0x31:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 26, 2, 3 }, { 3, 30, height + 4 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 3, 30, height + 4 }, { 26, 2, 3 } });
|
||||
break;
|
||||
case 0x10:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 24, 3 }, { 30, 3, height + 4 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 30, 3, height + 4 }, { 2, 24, 3 } });
|
||||
break;
|
||||
case 0x32:
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 23, 3 }, { 30, 3, height + 4 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 30, 3, height + 4 }, { 2, 23, 3 } });
|
||||
break;
|
||||
default:
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { boundBox.x, boundBox.y, 0 },
|
||||
{ boundBoxOffset.x, boundBoxOffset.y, height + 24 });
|
||||
session, imageId, { 0, 0, height },
|
||||
{ { boundBoxOffset.x, boundBoxOffset.y, height + 24 }, { boundBox.x, boundBox.y, 0 } });
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -1213,7 +1213,7 @@ void VehicleVisualMiniGolfPlayer(
|
|||
|
||||
ImageIndex index = rideEntry->Cars[0].base_image_id + 1 + ebx;
|
||||
auto image = ImageId(index, peep->TshirtColour, peep->TrousersColour);
|
||||
PaintAddImageAsParent(session, image, { 0, 0, z }, { 1, 1, 11 }, { 0, 0, z + 5 });
|
||||
PaintAddImageAsParent(session, image, { 0, 0, z }, { { 0, 0, z + 5 }, { 1, 1, 11 } });
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1242,5 +1242,5 @@ void VehicleVisualMiniGolfBall(
|
|||
return;
|
||||
|
||||
uint32_t image_id = rideEntry->Cars[0].base_image_id;
|
||||
PaintAddImageAsParent(session, ImageId(image_id), { 0, 0, z }, { 1, 1, 0 }, { 0, 0, z + 3 });
|
||||
PaintAddImageAsParent(session, ImageId(image_id), { 0, 0, z }, { { 0, 0, z + 3 }, { 1, 1, 0 } });
|
||||
}
|
||||
|
|
|
@ -26,7 +26,7 @@ static void PaintMiniHelicoptersTrackStation(
|
|||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SPR_STATION_BASE_B_SW_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 32, 28, 1 }, { 0, 2, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { { 0, 2, height }, { 32, 28, 1 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW);
|
||||
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { { 0, 0, height }, { 32, 20, 1 } });
|
||||
|
@ -38,7 +38,7 @@ static void PaintMiniHelicoptersTrackStation(
|
|||
else if (direction == 1 || direction == 3)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SPR_STATION_BASE_B_NW_SE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 28, 32, 1 }, { 2, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { { 2, 0, height }, { 28, 32, 1 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_SE_NW);
|
||||
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { { 0, 0, height }, { 20, 32, 1 } });
|
||||
|
@ -64,13 +64,13 @@ static void PaintMiniHelicoptersTrackFlat(
|
|||
if (direction & 1)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_SE_NW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 3 }, { 6, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 6, 0, height }, { 20, 32, 3 } });
|
||||
PaintUtilPushTunnelRight(session, height, TUNNEL_0);
|
||||
}
|
||||
else
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 3 }, { 0, 6, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } });
|
||||
PaintUtilPushTunnelLeft(session, height, TUNNEL_0);
|
||||
}
|
||||
|
||||
|
@ -98,25 +98,25 @@ static void PaintMiniHelicoptersTrackFlatTo25DegUp(
|
|||
case 0:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_TO_25_DEG_UP_SW_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 3 }, { 0, 6, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } });
|
||||
PaintUtilPushTunnelLeft(session, height, TUNNEL_0);
|
||||
break;
|
||||
case 1:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_TO_25_DEG_UP_NW_SE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 3 }, { 6, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 6, 0, height }, { 20, 32, 3 } });
|
||||
PaintUtilPushTunnelRight(session, height, TUNNEL_2);
|
||||
break;
|
||||
case 2:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_TO_25_DEG_UP_NE_SW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 3 }, { 0, 6, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } });
|
||||
PaintUtilPushTunnelLeft(session, height, TUNNEL_2);
|
||||
break;
|
||||
case 3:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_TO_25_DEG_UP_SE_NW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 3 }, { 6, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 6, 0, height }, { 20, 32, 3 } });
|
||||
PaintUtilPushTunnelRight(session, height, TUNNEL_0);
|
||||
break;
|
||||
}
|
||||
|
@ -142,22 +142,22 @@ static void PaintMiniHelicoptersTrack25DegUp(
|
|||
{
|
||||
case 0:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_SW_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 3 }, { 0, 6, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } });
|
||||
PaintUtilPushTunnelLeft(session, height - 8, TUNNEL_1);
|
||||
break;
|
||||
case 1:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_NW_SE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 3 }, { 6, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 6, 0, height }, { 20, 32, 3 } });
|
||||
PaintUtilPushTunnelRight(session, height + 8, TUNNEL_2);
|
||||
break;
|
||||
case 2:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_NE_SW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 3 }, { 0, 6, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } });
|
||||
PaintUtilPushTunnelLeft(session, height + 8, TUNNEL_2);
|
||||
break;
|
||||
case 3:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_SE_NW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 3 }, { 6, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 6, 0, height }, { 20, 32, 3 } });
|
||||
PaintUtilPushTunnelRight(session, height - 8, TUNNEL_1);
|
||||
break;
|
||||
}
|
||||
|
@ -184,25 +184,25 @@ static void PaintMiniHelicoptersTrack25DegUpToFlat(
|
|||
case 0:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_TO_FLAT_SW_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 3 }, { 0, 6, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } });
|
||||
PaintUtilPushTunnelLeft(session, height - 8, TUNNEL_0);
|
||||
break;
|
||||
case 1:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_TO_FLAT_NW_SE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 3 }, { 6, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 6, 0, height }, { 20, 32, 3 } });
|
||||
PaintUtilPushTunnelRight(session, height + 8, TUNNEL_12);
|
||||
break;
|
||||
case 2:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_TO_FLAT_NE_SW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 3 }, { 0, 6, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } });
|
||||
PaintUtilPushTunnelLeft(session, height + 8, TUNNEL_12);
|
||||
break;
|
||||
case 3:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_25_DEG_UP_TO_FLAT_SE_NW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 3 }, { 6, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 6, 0, height }, { 20, 32, 3 } });
|
||||
PaintUtilPushTunnelRight(session, height - 8, TUNNEL_0);
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -167,13 +167,13 @@ static PaintStruct* PaintMonorailCyclesUtil7C(
|
|||
if (flip)
|
||||
{
|
||||
return PaintAddImageAsParent(
|
||||
session, imageId, { yOffset, xOffset, zOffset }, { boundBoxLengthY, boundBoxLengthX, boundBoxLengthZ },
|
||||
{ boundBoxOffsetY, boundBoxOffsetX, boundBoxOffsetZ });
|
||||
session, imageId, { yOffset, xOffset, zOffset },
|
||||
{ { boundBoxOffsetY, boundBoxOffsetX, boundBoxOffsetZ }, { boundBoxLengthY, boundBoxLengthX, boundBoxLengthZ } });
|
||||
}
|
||||
|
||||
return PaintAddImageAsParent(
|
||||
session, imageId, { xOffset, yOffset, zOffset }, { boundBoxLengthX, boundBoxLengthY, boundBoxLengthZ },
|
||||
{ boundBoxOffsetX, boundBoxOffsetY, boundBoxOffsetZ });
|
||||
session, imageId, { xOffset, yOffset, zOffset },
|
||||
{ { boundBoxOffsetX, boundBoxOffsetY, boundBoxOffsetZ }, { boundBoxLengthX, boundBoxLengthY, boundBoxLengthZ } });
|
||||
}
|
||||
|
||||
/** rct2: 0x0088AD48 */
|
||||
|
@ -213,7 +213,7 @@ static void PaintMonorailCyclesStation(
|
|||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SPR_STATION_BASE_B_SW_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 32, 28, 1 }, { 0, 2, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { { 0, 2, height }, { 32, 28, 1 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SprMonorailCyclesFlatSwNe);
|
||||
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { { 0, 0, height }, { 32, 20, 1 } });
|
||||
|
@ -225,7 +225,7 @@ static void PaintMonorailCyclesStation(
|
|||
else if (direction == 1 || direction == 3)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SPR_STATION_BASE_B_NW_SE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 28, 32, 1 }, { 2, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { { 2, 0, height }, { 28, 32, 1 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SprMonorailCyclesFlatNwSe);
|
||||
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { { 0, 0, height }, { 20, 32, 1 } });
|
||||
|
|
|
@ -73,8 +73,8 @@ void VehicleVisualObservationTower(
|
|||
imageId1 = ImageId(baseImageId + 1).WithRemap(FilterPaletteID::Palette44);
|
||||
}
|
||||
|
||||
PaintAddImageAsParent(session, imageId0, { 0, 0, z }, { 2, 2, 41 }, { -11, -11, z + 1 });
|
||||
PaintAddImageAsParent(session, imageId1, { 0, 0, z }, { 16, 16, 41 }, { -5, -5, z + 1 });
|
||||
PaintAddImageAsParent(session, imageId0, { 0, 0, z }, { { -11, -11, z + 1 }, { 2, 2, 41 } });
|
||||
PaintAddImageAsParent(session, imageId1, { 0, 0, z }, { { -5, -5, z + 1 }, { 16, 16, 41 } });
|
||||
assert(carEntry->effect_visual == 1);
|
||||
}
|
||||
|
||||
|
@ -101,13 +101,13 @@ static void PaintObservationTowerBase(
|
|||
if (trackSequence == 0)
|
||||
{
|
||||
auto imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SprObservationTowerSegmentBase);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 27 }, { 8, 8, height + 3 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 8, 8, height + 3 }, { 2, 2, 27 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SprObservationTowerSegment);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height + 32 }, { 2, 2, 30 }, { 8, 8, height + 32 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height + 32 }, { { 8, 8, height + 32 }, { 2, 2, 30 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SprObservationTowerSegment);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height + 64 }, { 2, 2, 30 }, { 8, 8, height + 64 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height + 64 }, { { 8, 8, height + 64 }, { 2, 2, 30 } });
|
||||
|
||||
PaintUtilSetVerticalTunnel(session, height + 96);
|
||||
PaintUtilSetSegmentSupportHeight(session, SEGMENTS_ALL, 0xFFFF, 0);
|
||||
|
@ -161,7 +161,7 @@ static void PaintObservationTowerSection(
|
|||
}
|
||||
|
||||
auto imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SprObservationTowerSegment);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 30 }, { 8, 8, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 8, 8, height }, { 2, 2, 30 } });
|
||||
|
||||
const TileElement* nextTileElement = reinterpret_cast<const TileElement*>(&trackElement) + 1;
|
||||
if (trackElement.IsLastForTile() || trackElement.GetClearanceZ() != nextTileElement->GetBaseZ())
|
||||
|
|
|
@ -65,7 +65,7 @@ static void PaintSpaceRingsStructure(
|
|||
}
|
||||
|
||||
auto imageId = imageColourFlags.WithIndex(baseImageId + frameNum);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 20, 23 }, { -10, -10, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { -10, -10, height }, { 20, 20, 23 } });
|
||||
|
||||
if (vehicle != nullptr && vehicle->num_peeps > 0)
|
||||
{
|
||||
|
@ -106,12 +106,12 @@ static void PaintSpaceRings(
|
|||
if (TrackPaintUtilHasFence(EDGE_SW, position, trackElement, ride, session.CurrentRotation))
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SprSpaceRingsFenceSw);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 28, 7 }, { 29, 0, height + 2 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 29, 0, height + 2 }, { 1, 28, 7 } });
|
||||
}
|
||||
if (TrackPaintUtilHasFence(EDGE_SE, position, trackElement, ride, session.CurrentRotation))
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SprSpaceRingsFenceSe);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 1, 7 }, { 0, 29, height + 2 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 29, height + 2 }, { 28, 1, 7 } });
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
|
|
@ -67,7 +67,7 @@ static void SpiralSlidePaintTileRight(
|
|||
else
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex((rideEntry->Cars[0].base_image_id + SpiralSlideRightR3));
|
||||
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height }, { 16, 16, 108 }, { 16, 0, height + 3 });
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height }, { { 16, 0, height + 3 }, { 16, 16, 108 } });
|
||||
}
|
||||
|
||||
static void SpiralSlidePaintTileLeft(
|
||||
|
@ -89,7 +89,7 @@ static void SpiralSlidePaintTileLeft(
|
|||
else
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex((rideEntry->Cars[0].base_image_id + SpiralSlideLeftR3));
|
||||
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height }, { 16, 16, 108 }, { 0, 16, height + 3 });
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height }, { { 0, 16, height + 3 }, { 16, 16, 108 } });
|
||||
}
|
||||
|
||||
static void SpiralSlidePaintTileFront(
|
||||
|
@ -105,33 +105,33 @@ static void SpiralSlidePaintTileFront(
|
|||
if (direction == 1)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex((rideEntry->Cars[0].base_image_id + SpiralSlideInsideR1));
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height }, { 2, 16, 108 }, { -12, 0, height + 3 });
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height }, { { -12, 0, height + 3 }, { 2, 16, 108 } });
|
||||
}
|
||||
else if (direction == 2)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex((rideEntry->Cars[0].base_image_id + SpiralSlideInsideR2));
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height }, { 16, 2, 108 }, { 0, -12, height + 3 });
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height }, { { 0, -12, height + 3 }, { 16, 2, 108 } });
|
||||
}
|
||||
|
||||
if (direction == 0)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex((rideEntry->Cars[0].base_image_id + SpiralSlideCentreR0));
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height }, { 16, 8, 108 }, { 0, 8, height + 3 });
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height }, { { 0, 8, height + 3 }, { 16, 8, 108 } });
|
||||
}
|
||||
else if (direction == 1)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex((rideEntry->Cars[0].base_image_id + SpiralSlideCentreR1));
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height }, { 2, 16, 108 }, { 14, 0, height + 3 });
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height }, { { 14, 0, height + 3 }, { 2, 16, 108 } });
|
||||
}
|
||||
else if (direction == 2)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex((rideEntry->Cars[0].base_image_id + SpiralSlideCentreR2));
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height }, { 16, 2, 108 }, { 0, 14, height + 3 });
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height }, { { 0, 14, height + 3 }, { 16, 2, 108 } });
|
||||
}
|
||||
else if (direction == 3)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex((rideEntry->Cars[0].base_image_id + SpiralSlideCentreR3));
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height }, { 8, 16, 108 }, { 8, 0, height + 3 });
|
||||
PaintAddImageAsParent(session, imageId, { 16, 16, height }, { { 8, 0, height + 3 }, { 8, 16, 108 } });
|
||||
}
|
||||
|
||||
DrawPixelInfo* dpi = &session.DPI;
|
||||
|
@ -214,7 +214,7 @@ static void PaintSpiralSlide(
|
|||
{
|
||||
auto imageId = session.TrackColours[SCHEME_SUPPORTS].WithIndex(
|
||||
rideEntry->Cars[0].base_image_id + ((direction & 1) ? SpiralSlideBaseB : SpiralSlideBaseA));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 32, 1 }, { 0, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 0, height }, { 32, 32, 1 } });
|
||||
}
|
||||
|
||||
const uint32_t spiral_slide_fence_sprites[] = {
|
||||
|
|
|
@ -78,21 +78,21 @@ static void PaintMotionSimulatorVehicle(
|
|||
case 0:
|
||||
PaintAddImageAsParent(session, simulatorImageId, offset, { offset, { 20, 20, 44 } });
|
||||
PaintAddImageAsChild(session, stairsImageId, offset, { offset, { 20, 20, 44 } });
|
||||
PaintAddImageAsParent(session, stairsRailImageId, offset, { 20, 2, 44 }, { offset.x, offset.y + 32, offset.z });
|
||||
PaintAddImageAsParent(session, stairsRailImageId, offset, { { offset.x, offset.y + 32, offset.z }, { 20, 2, 44 } });
|
||||
break;
|
||||
case 1:
|
||||
PaintAddImageAsParent(session, simulatorImageId, offset, { offset, { 20, 20, 44 } });
|
||||
PaintAddImageAsChild(session, stairsImageId, offset, { offset, { 20, 20, 44 } });
|
||||
PaintAddImageAsParent(session, stairsRailImageId, offset, { 2, 20, 44 }, { offset.x + 34, offset.y, offset.z });
|
||||
PaintAddImageAsParent(session, stairsRailImageId, offset, { { offset.x + 34, offset.y, offset.z }, { 2, 20, 44 } });
|
||||
break;
|
||||
case 2:
|
||||
PaintAddImageAsParent(session, stairsRailImageId, offset, { 20, 2, 44 }, { offset.x, offset.y - 10, offset.z });
|
||||
PaintAddImageAsParent(session, stairsImageId, offset, { 20, 20, 44 }, { offset.x, offset.y + 5, offset.z });
|
||||
PaintAddImageAsParent(session, stairsRailImageId, offset, { { offset.x, offset.y - 10, offset.z }, { 20, 2, 44 } });
|
||||
PaintAddImageAsParent(session, stairsImageId, offset, { { offset.x, offset.y + 5, offset.z }, { 20, 20, 44 } });
|
||||
PaintAddImageAsChild(session, simulatorImageId, offset, { { offset.x, offset.y + 5, offset.z }, { 20, 20, 44 } });
|
||||
break;
|
||||
case 3:
|
||||
PaintAddImageAsParent(session, stairsRailImageId, offset, { 2, 20, 44 }, { offset.x - 10, offset.y, offset.z });
|
||||
PaintAddImageAsParent(session, stairsImageId, offset, { 20, 20, 44 }, { offset.x + 5, offset.y, offset.z });
|
||||
PaintAddImageAsParent(session, stairsRailImageId, offset, { { offset.x - 10, offset.y, offset.z }, { 2, 20, 44 } });
|
||||
PaintAddImageAsParent(session, stairsImageId, offset, { { offset.x + 5, offset.y, offset.z }, { 20, 20, 44 } });
|
||||
PaintAddImageAsChild(session, simulatorImageId, offset, { { offset.x + 5, offset.y, offset.z }, { 20, 20, 44 } });
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -55,11 +55,11 @@ void VehicleVisualRotoDrop(
|
|||
|
||||
// Draw back:
|
||||
image_id = imageFlags.WithIndex(baseImage_id);
|
||||
PaintAddImageAsParent(session, image_id, { 0, 0, z }, { 2, 2, 41 }, { -11, -11, z + 1 });
|
||||
PaintAddImageAsParent(session, image_id, { 0, 0, z }, { { -11, -11, z + 1 }, { 2, 2, 41 } });
|
||||
|
||||
// Draw front:
|
||||
image_id = imageFlags.WithIndex(baseImage_id + 4);
|
||||
PaintAddImageAsParent(session, image_id, { 0, 0, z }, { 16, 16, 41 }, { -5, -5, z + 1 });
|
||||
PaintAddImageAsParent(session, image_id, { 0, 0, z }, { { -5, -5, z + 1 }, { 16, 16, 41 } });
|
||||
|
||||
if (vehicle->num_peeps > 0 && !vehicle->IsGhost())
|
||||
{
|
||||
|
@ -121,15 +121,15 @@ static void PaintRotoDropBase(
|
|||
{
|
||||
auto imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
(direction & 1 ? SPR_ROTO_DROP_TOWER_BASE_90_DEG : SPR_ROTO_DROP_TOWER_BASE));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 27 }, { 8, 8, height + 3 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 8, 8, height + 3 }, { 2, 2, 27 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
(direction & 1 ? SPR_ROTO_DROP_TOWER_BASE_SEGMENT_90_DEG : SPR_ROTO_DROP_TOWER_BASE_SEGMENT));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height + 32 }, { 2, 2, 30 }, { 8, 8, height + 32 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height + 32 }, { { 8, 8, height + 32 }, { 2, 2, 30 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
(direction & 1 ? SPR_ROTO_DROP_TOWER_BASE_SEGMENT_90_DEG : SPR_ROTO_DROP_TOWER_BASE_SEGMENT));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height + 64 }, { 2, 2, 30 }, { 8, 8, height + 64 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height + 64 }, { { 8, 8, height + 64 }, { 2, 2, 30 } });
|
||||
|
||||
PaintUtilSetVerticalTunnel(session, height + 96);
|
||||
PaintUtilSetSegmentSupportHeight(session, SEGMENTS_ALL, 0xFFFF, 0);
|
||||
|
@ -183,7 +183,7 @@ static void PaintRotoDropTowerSection(
|
|||
}
|
||||
|
||||
auto imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_ROTO_DROP_TOWER_SEGMENT);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 2, 30 }, { 8, 8, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 8, 8, height }, { 2, 2, 30 } });
|
||||
|
||||
const TileElement* nextTileElement = reinterpret_cast<const TileElement*>(&trackElement) + 1;
|
||||
if (trackElement.IsLastForTile() || trackElement.GetClearanceZ() != nextTileElement->GetBaseZ())
|
||||
|
|
|
@ -102,12 +102,12 @@ static void PaintTwist(
|
|||
if (TrackPaintUtilHasFence(EDGE_SW, session.MapPosition, trackElement, ride, session.CurrentRotation))
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SPR_FENCE_ROPE_SW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 28, 7 }, { 29, 0, height + 3 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 29, 0, height + 3 }, { 1, 28, 7 } });
|
||||
}
|
||||
if (TrackPaintUtilHasFence(EDGE_SE, session.MapPosition, trackElement, ride, session.CurrentRotation))
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SPR_FENCE_ROPE_SE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 1, 7 }, { 0, 29, height + 3 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 29, height + 3 }, { 28, 1, 7 } });
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
|
|
@ -433,12 +433,12 @@ static void PaintMonorailStation(
|
|||
if (direction == 0 || direction == 2)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SPR_STATION_BASE_B_SW_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 32, 28, 2 }, { 0, 2, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { { 0, 2, height }, { 32, 28, 2 } });
|
||||
}
|
||||
else if (direction == 1 || direction == 3)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SPR_STATION_BASE_B_NW_SE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { 28, 32, 2 }, { 2, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height - 2 }, { { 2, 0, height }, { 28, 32, 2 } });
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -943,7 +943,8 @@ static void PaintMonorailTrackLeftEighthToDiag(
|
|||
ghost_train_track_pieces_left_eight_to_diag[direction][index]);
|
||||
const CoordsXY& offset = GhostTrainTrackPiecesLeftEightToDiagBoxes[direction][index].offset;
|
||||
const CoordsXY& bounds = GhostTrainTrackPiecesLeftEightToDiagBoxes[direction][index].length;
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { bounds.x, bounds.y, 2 }, { offset.x, offset.y, height });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { { offset.x, offset.y, height }, { bounds.x, bounds.y, 2 } });
|
||||
}
|
||||
|
||||
switch (trackSequence)
|
||||
|
@ -1008,7 +1009,8 @@ static void PaintMonorailTrackRightEighthToDiag(
|
|||
ghost_train_track_pieces_right_eight_to_diag[direction][index]);
|
||||
const CoordsXY offset = GhostTrainTrackPiecesRightEightToDiagBoxes[direction][index].offset;
|
||||
const CoordsXY bounds = GhostTrainTrackPiecesRightEightToDiagBoxes[direction][index].length;
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { bounds.x, bounds.y, 2 }, { offset.x, offset.y, height });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId, { 0, 0, height }, { { offset.x, offset.y, height }, { bounds.x, bounds.y, 2 } });
|
||||
}
|
||||
|
||||
switch (trackSequence)
|
||||
|
@ -1110,7 +1112,7 @@ static void PaintMonorailTrackDiagFlat(
|
|||
if (monorail_diag_image_segment[direction][trackSequence])
|
||||
{
|
||||
auto imageId = session.TrackColours[SCHEME_TRACK].WithIndex(monorail_track_pieces_diag_flat[direction]);
|
||||
PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height });
|
||||
PaintAddImageAsParent(session, imageId, { -16, -16, height }, { { -16, -16, height }, { 32, 32, 2 } });
|
||||
}
|
||||
|
||||
if (trackSequence == 3)
|
||||
|
@ -1133,7 +1135,7 @@ static void PaintMonorailTrackDiag25DegUp(
|
|||
if (monorail_diag_image_segment[direction][trackSequence])
|
||||
{
|
||||
auto imageId = session.TrackColours[SCHEME_TRACK].WithIndex(monorail_track_pieces_diag_25_deg_up[direction]);
|
||||
PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height });
|
||||
PaintAddImageAsParent(session, imageId, { -16, -16, height }, { { -16, -16, height }, { 32, 32, 2 } });
|
||||
}
|
||||
|
||||
if (trackSequence == 3)
|
||||
|
@ -1156,7 +1158,7 @@ static void PaintMonorailTrackDiagFlatTo25DegUp(
|
|||
if (monorail_diag_image_segment[direction][trackSequence])
|
||||
{
|
||||
auto imageId = session.TrackColours[SCHEME_TRACK].WithIndex(monorail_track_pieces_diag_flat_to_25_deg_up[direction]);
|
||||
PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height });
|
||||
PaintAddImageAsParent(session, imageId, { -16, -16, height }, { { -16, -16, height }, { 32, 32, 2 } });
|
||||
}
|
||||
|
||||
if (trackSequence == 3)
|
||||
|
@ -1179,7 +1181,7 @@ static void PaintMonorailTrackDiag25DegUpToFlat(
|
|||
if (monorail_diag_image_segment[direction][trackSequence])
|
||||
{
|
||||
auto imageId = session.TrackColours[SCHEME_TRACK].WithIndex(monorail_track_pieces_diag_25_deg_up_to_flat[direction]);
|
||||
PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height });
|
||||
PaintAddImageAsParent(session, imageId, { -16, -16, height }, { { -16, -16, height }, { 32, 32, 2 } });
|
||||
}
|
||||
|
||||
if (trackSequence == 3)
|
||||
|
@ -1202,7 +1204,7 @@ static void PaintMonorailTrackDiag25DegDown(
|
|||
if (monorail_diag_image_segment[direction][trackSequence])
|
||||
{
|
||||
auto imageId = session.TrackColours[SCHEME_TRACK].WithIndex(monorail_track_pieces_diag_25_deg_up[(direction + 2) % 4]);
|
||||
PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height });
|
||||
PaintAddImageAsParent(session, imageId, { -16, -16, height }, { { -16, -16, height }, { 32, 32, 2 } });
|
||||
}
|
||||
|
||||
if (trackSequence == 3)
|
||||
|
@ -1226,7 +1228,7 @@ static void PaintMonorailTrackDiagFlatTo25DegDown(
|
|||
{
|
||||
auto imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
monorail_track_pieces_diag_25_deg_up_to_flat[(direction + 2) % 4]);
|
||||
PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height });
|
||||
PaintAddImageAsParent(session, imageId, { -16, -16, height }, { { -16, -16, height }, { 32, 32, 2 } });
|
||||
}
|
||||
|
||||
if (trackSequence == 3)
|
||||
|
@ -1250,7 +1252,7 @@ static void PaintMonorailTrackDiag25DegDownToFlat(
|
|||
{
|
||||
auto imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
monorail_track_pieces_diag_flat_to_25_deg_up[(direction + 2) % 4]);
|
||||
PaintAddImageAsParent(session, imageId, { -16, -16, height }, { 32, 32, 2 }, { -16, -16, height });
|
||||
PaintAddImageAsParent(session, imageId, { -16, -16, height }, { { -16, -16, height }, { 32, 32, 2 } });
|
||||
}
|
||||
|
||||
if (trackSequence == 3)
|
||||
|
|
|
@ -278,21 +278,21 @@ static void PaintRiverRapidsTrackFlat(
|
|||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
(direction == 1 ? SPR_RIVER_RAPIDS_FLAT_NW_SE : SPR_RIVER_RAPIDS_FLAT_SE_NW));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 11 }, { 4, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 4, 0, height }, { 24, 32, 11 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
(direction == 1 ? SPR_RIVER_RAPIDS_FLAT_FRONT_NW_SE : SPR_RIVER_RAPIDS_FLAT_FRONT_SE_NW));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 2, 5 }, { 10, 10, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 10, 10, height }, { 1, 2, 5 } });
|
||||
}
|
||||
else
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
(direction == 0 ? SPR_RIVER_RAPIDS_FLAT_SW_NE : SPR_RIVER_RAPIDS_FLAT_NE_SW));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 11 }, { 0, 4, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 4, height }, { 32, 24, 11 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
(direction == 0 ? SPR_RIVER_RAPIDS_FLAT_FRONT_SW_NE : SPR_RIVER_RAPIDS_FLAT_FRONT_NE_SW));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 2, 5 }, { 10, 10, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 10, 10, height }, { 1, 2, 5 } });
|
||||
}
|
||||
|
||||
WoodenASupportsPaintSetup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
|
@ -329,10 +329,10 @@ static void PaintRiverRapidsTrack25Deg(PaintSession& session, uint8_t direction,
|
|||
{
|
||||
case 0:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][0]);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 4 }, { 0, 4, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 4, height }, { 32, 24, 4 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][1]);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 34 }, { 0, 27, height + 16 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 27, height + 16 }, { 32, 1, 34 } });
|
||||
|
||||
WoodenASupportsPaintSetup(session, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
PaintUtilPushTunnelLeft(session, height - 8, TUNNEL_SQUARE_7);
|
||||
|
@ -340,11 +340,11 @@ static void PaintRiverRapidsTrack25Deg(PaintSession& session, uint8_t direction,
|
|||
|
||||
case 1:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][0]);
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 4 }, { 4, 0, height });
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 4, 0, height }, { 24, 32, 4 } });
|
||||
session.WoodenSupportsPrependTo = ps;
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][1]);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 34 }, { 27, 0, height + 16 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 27, 0, height + 16 }, { 1, 32, 34 } });
|
||||
|
||||
WoodenASupportsPaintSetup(session, 1, 10, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
PaintUtilPushTunnelRight(session, height + 8, TUNNEL_SQUARE_8);
|
||||
|
@ -352,11 +352,11 @@ static void PaintRiverRapidsTrack25Deg(PaintSession& session, uint8_t direction,
|
|||
|
||||
case 2:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][0]);
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 4 }, { 0, 4, height });
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 4, height }, { 32, 24, 4 } });
|
||||
session.WoodenSupportsPrependTo = ps;
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][1]);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 34 }, { 0, 27, height + 16 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 27, height + 16 }, { 32, 1, 34 } });
|
||||
|
||||
WoodenASupportsPaintSetup(session, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
PaintUtilPushTunnelLeft(session, height + 8, TUNNEL_SQUARE_8);
|
||||
|
@ -364,10 +364,10 @@ static void PaintRiverRapidsTrack25Deg(PaintSession& session, uint8_t direction,
|
|||
|
||||
case 3:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][0]);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 4 }, { 4, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 4, 0, height }, { 24, 32, 4 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][1]);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 34 }, { 27, 0, height + 16 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 27, 0, height + 16 }, { 1, 32, 34 } });
|
||||
|
||||
WoodenASupportsPaintSetup(session, 1, 12, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
PaintUtilPushTunnelRight(session, height - 8, TUNNEL_SQUARE_7);
|
||||
|
@ -388,10 +388,10 @@ static void PaintRiverRapidsTrack25DegToFlatA(
|
|||
{
|
||||
case 0:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][0]);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 4 }, { 0, 4, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 4, height }, { 32, 24, 4 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][1]);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 18 }, { 0, 27, height + 16 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 27, height + 16 }, { 32, 1, 18 } });
|
||||
|
||||
WoodenASupportsPaintSetup(session, 0, 5, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
PaintUtilPushTunnelLeft(session, height - 8, TUNNEL_SQUARE_FLAT);
|
||||
|
@ -399,11 +399,11 @@ static void PaintRiverRapidsTrack25DegToFlatA(
|
|||
|
||||
case 1:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][0]);
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 4 }, { 4, 0, height });
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 4, 0, height }, { 24, 32, 4 } });
|
||||
session.WoodenSupportsPrependTo = ps;
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][1]);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 18 }, { 27, 0, height + 16 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 27, 0, height + 16 }, { 1, 32, 18 } });
|
||||
|
||||
WoodenASupportsPaintSetup(session, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
PaintUtilPushTunnelRight(session, height + 8, TUNNEL_14);
|
||||
|
@ -411,12 +411,12 @@ static void PaintRiverRapidsTrack25DegToFlatA(
|
|||
|
||||
case 2:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][0]);
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 4 }, { 0, 4, height });
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 4, height }, { 32, 24, 4 } });
|
||||
session.WoodenSupportsPrependTo = ps;
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][1]);
|
||||
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 18 }, { 0, 27, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 27, height }, { 32, 1, 18 } });
|
||||
|
||||
WoodenASupportsPaintSetup(session, 0, 7, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
PaintUtilPushTunnelLeft(session, height + 8, TUNNEL_14);
|
||||
|
@ -424,10 +424,10 @@ static void PaintRiverRapidsTrack25DegToFlatA(
|
|||
|
||||
case 3:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][0]);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 4 }, { 4, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 4, 0, height }, { 24, 32, 4 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][1]);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 18 }, { 27, 0, height + 16 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 27, 0, height + 16 }, { 1, 32, 18 } });
|
||||
|
||||
WoodenASupportsPaintSetup(session, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
PaintUtilPushTunnelRight(session, height - 8, TUNNEL_SQUARE_FLAT);
|
||||
|
@ -448,10 +448,10 @@ static void PaintRiverRapidsTrack25DegToFlatB(
|
|||
{
|
||||
case 0:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][0]);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 11 }, { 0, 4, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 4, height }, { 32, 24, 11 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][1]);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 26 }, { 0, 27, height + 16 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 27, height + 16 }, { 32, 1, 26 } });
|
||||
|
||||
WoodenASupportsPaintSetup(session, 0, 1, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
PaintUtilPushTunnelLeft(session, height, TUNNEL_SQUARE_FLAT);
|
||||
|
@ -459,11 +459,11 @@ static void PaintRiverRapidsTrack25DegToFlatB(
|
|||
|
||||
case 1:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][0]);
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 11 }, { 4, 0, height });
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 4, 0, height }, { 24, 32, 11 } });
|
||||
session.WoodenSupportsPrependTo = ps;
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][1]);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 26 }, { 27, 0, height + 16 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 27, 0, height + 16 }, { 1, 32, 26 } });
|
||||
|
||||
WoodenASupportsPaintSetup(session, 1, 2, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
PaintUtilPushTunnelRight(session, height, TUNNEL_SQUARE_8);
|
||||
|
@ -471,11 +471,11 @@ static void PaintRiverRapidsTrack25DegToFlatB(
|
|||
|
||||
case 2:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][0]);
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 11 }, { 0, 4, height });
|
||||
ps = PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 4, height }, { 32, 24, 11 } });
|
||||
session.WoodenSupportsPrependTo = ps;
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][1]);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 26 }, { 0, 27, height + 16 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 27, height + 16 }, { 32, 1, 26 } });
|
||||
|
||||
WoodenASupportsPaintSetup(session, 0, 3, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
PaintUtilPushTunnelLeft(session, height, TUNNEL_SQUARE_8);
|
||||
|
@ -483,10 +483,10 @@ static void PaintRiverRapidsTrack25DegToFlatB(
|
|||
|
||||
case 3:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][0]);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 11 }, { 4, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 4, 0, height }, { 24, 32, 11 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(sprites[direction][1]);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 26 }, { 27, 0, height + 16 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 27, 0, height + 16 }, { 1, 32, 26 } });
|
||||
|
||||
WoodenASupportsPaintSetup(session, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
PaintUtilPushTunnelRight(session, height, TUNNEL_SQUARE_FLAT);
|
||||
|
@ -555,41 +555,41 @@ static void PaintRiverRapidsTrackLeftQuarterTurn1Tile(
|
|||
{
|
||||
case 0:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_SW_NW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 26, 11 }, { 4, 2, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 4, 2, height }, { 28, 26, 11 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_FRONT_SW_NW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 1, 7 }, { 28, 27, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 28, 27, height }, { 2, 1, 7 } });
|
||||
|
||||
PaintUtilPushTunnelLeft(session, height, TUNNEL_SQUARE_FLAT);
|
||||
break;
|
||||
|
||||
case 1:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_NW_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 25, 25, 5 }, { 0, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 0, height }, { 25, 25, 5 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_QUARTER_TURN_1_TILE_FRONT_LEFT_NW_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 30, 7 }, { 27, 1, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 27, 1, height }, { 1, 30, 7 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_QUARTER_TURN_1_TILE_FRONT_RIGHT_NW_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 30, 1, 7 }, { 1, 27, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 1, 27, height }, { 30, 1, 7 } });
|
||||
break;
|
||||
|
||||
case 2:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_NE_SE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 26, 28, 11 }, { 2, 4, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 2, 4, height }, { 26, 28, 11 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_FRONT_NE_SE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 2, 5 }, { 10, 10, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 10, 10, height }, { 1, 2, 5 } });
|
||||
|
||||
PaintUtilPushTunnelRight(session, height, TUNNEL_SQUARE_FLAT);
|
||||
break;
|
||||
|
||||
case 3:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_SE_SW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 28, 11 }, { 4, 4, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 4, 4, height }, { 28, 28, 11 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_LEFT_QUARTER_TURN_1_TILE_FRONT_SE_SW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 1, 7 }, { 28, 28, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 28, 28, height }, { 1, 1, 7 } });
|
||||
|
||||
PaintUtilPushTunnelLeft(session, height, TUNNEL_SQUARE_FLAT);
|
||||
PaintUtilPushTunnelRight(session, height, TUNNEL_SQUARE_FLAT);
|
||||
|
@ -612,10 +612,10 @@ static void PaintRiverRapidsTrackRightQuarterTurn1Tile(
|
|||
{
|
||||
case 0:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_SW_SE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 28, 11 }, { 4, 4, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 4, 4, height }, { 28, 28, 11 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_FRONT_SW_SE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 1, 7 }, { 28, 28, height + 2 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 28, 28, height + 2 }, { 1, 1, 7 } });
|
||||
|
||||
PaintUtilPushTunnelLeft(session, height, TUNNEL_SQUARE_FLAT);
|
||||
PaintUtilPushTunnelRight(session, height, TUNNEL_SQUARE_FLAT);
|
||||
|
@ -623,31 +623,31 @@ static void PaintRiverRapidsTrackRightQuarterTurn1Tile(
|
|||
|
||||
case 1:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_SE_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 26, 11 }, { 4, 2, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 4, 2, height }, { 28, 26, 11 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_FRONT_SE_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 2, 1, 7 }, { 28, 27, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 28, 27, height }, { 2, 1, 7 } });
|
||||
|
||||
PaintUtilPushTunnelLeft(session, height, TUNNEL_SQUARE_FLAT);
|
||||
break;
|
||||
|
||||
case 2:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_NE_NW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 28, 28, 11 }, { 0, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 0, height }, { 28, 28, 11 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_QUARTER_TURN_1_TILE_FRONT_LEFT_NW_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 22, 7 }, { 27, 1, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 27, 1, height }, { 1, 22, 7 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_QUARTER_TURN_1_TILE_FRONT_RIGHT_NW_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 22, 1, 7 }, { 1, 27, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 1, 27, height }, { 22, 1, 7 } });
|
||||
break;
|
||||
|
||||
case 3:
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_NW_SW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 26, 28, 11 }, { 2, 4, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 2, 4, height }, { 26, 28, 11 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_RIGHT_QUARTER_TURN_1_TILE_FRONT_NW_SW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 28, 7 }, { 27, 2, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 27, 2, height }, { 1, 28, 7 } });
|
||||
|
||||
PaintUtilPushTunnelRight(session, height, TUNNEL_SQUARE_FLAT);
|
||||
break;
|
||||
|
@ -671,17 +671,17 @@ static void PaintRiverRapidsTrackWaterfall(
|
|||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
(direction == 1 ? SPR_RIVER_RAPIDS_WATERFALL_NW_SE : SPR_RIVER_RAPIDS_WATERFALL_SE_NW));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 11 }, { 4, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 4, 0, height }, { 24, 32, 11 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex((SPR_RIVER_RAPIDS_WATERFALL_BASE_NE_FRAME_0 + frameNum));
|
||||
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { { 4, 0, height }, { 24, 32, 11 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex((SPR_RIVER_RAPIDS_WATERFALL_TOP_NE_FRAME_0 + frameNum));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 27 }, { 4, 0, height + 17 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 4, 0, height + 17 }, { 1, 32, 27 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
(direction == 1 ? SPR_RIVER_RAPIDS_WATERFALL_FRONT_NW_SE : SPR_RIVER_RAPIDS_WATERFALL_FRONT_SE_NW));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 27 }, { 27, 0, height + 17 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 27, 0, height + 17 }, { 1, 32, 27 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex((SPR_RIVER_RAPIDS_WATERFALL_SIDE_SW_FRAME_0 + frameNum));
|
||||
PaintAddImageAsChild(session, imageId, { 0, 0, height }, { { 27, 0, height + 17 }, { 1, 32, 27 } });
|
||||
|
@ -740,18 +740,18 @@ static void PaintRiverRapidsTrackRapids(
|
|||
if (direction & 1)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex((SPR_RIVER_RAPIDS_RAPIDS_NW_SE_FRAME_0 + frameNum));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 24, 32, 11 }, { 4, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 4, 0, height }, { 24, 32, 11 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_RAPIDS_FRONT_NW_SE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 11 }, { 27, 0, height + 17 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 27, 0, height + 17 }, { 1, 32, 11 } });
|
||||
}
|
||||
else
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex((SPR_RIVER_RAPIDS_RAPIDS_SW_NE_FRAME_0 + frameNum));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 24, 11 }, { 0, 4, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 4, height }, { 32, 24, 11 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_RIVER_RAPIDS_RAPIDS_FRONT_SW_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 11 }, { 0, 27, height + 17 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 27, height + 17 }, { 32, 1, 11 } });
|
||||
}
|
||||
|
||||
WoodenASupportsPaintSetup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
|
|
|
@ -732,21 +732,21 @@ static void PaintSplashBoatsTrackFlat(
|
|||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
(direction == 1 ? SPR_SPLASH_BOATS_FLAT_TOP_NW_SE : SPR_SPLASH_BOATS_FLAT_TOP_SE_NW));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 2 }, { 6, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 6, 0, height }, { 20, 32, 2 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
(direction == 1 ? SPR_SPLASH_BOATS_FLAT_SIDE_NW_SE : SPR_SPLASH_BOATS_FLAT_SIDE_SE_NW));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 1, 32, 26 }, { 27, 0, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 27, 0, height }, { 1, 32, 26 } });
|
||||
}
|
||||
else
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
(direction == 0 ? SPR_SPLASH_BOATS_FLAT_TOP_SW_NE : SPR_SPLASH_BOATS_FLAT_TOP_NE_SW));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 2 }, { 0, 6, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 6, height }, { 32, 20, 2 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
(direction == 0 ? SPR_SPLASH_BOATS_FLAT_SIDE_SW_NE : SPR_SPLASH_BOATS_FLAT_SIDE_NE_SW));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 1, 26 }, { 0, 27, height });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 27, height }, { 32, 1, 26 } });
|
||||
}
|
||||
|
||||
WoodenASupportsPaintSetup(session, (direction & 1), 0, height, session.TrackColours[SCHEME_SUPPORTS]);
|
||||
|
@ -773,7 +773,7 @@ static void PaintSplashBoatsStation(
|
|||
{
|
||||
auto imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
(direction == 1 ? SPR_SPLASH_BOATS_FLAT_TOP_NW_SE : SPR_SPLASH_BOATS_FLAT_TOP_SE_NW));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 20, 32, 1 }, { 6, 0, height + 3 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 6, 0, height + 3 }, { 20, 32, 1 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SPR_STATION_BASE_B_NW_SE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 32, 1 });
|
||||
|
@ -782,7 +782,7 @@ static void PaintSplashBoatsStation(
|
|||
{
|
||||
auto imageId = session.TrackColours[SCHEME_TRACK].WithIndex(
|
||||
(direction == 0 ? SPR_SPLASH_BOATS_FLAT_TOP_SW_NE : SPR_SPLASH_BOATS_FLAT_TOP_NE_SW));
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 20, 1 }, { 0, 6, height + 3 });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { { 0, 6, height + 3 }, { 32, 20, 1 } });
|
||||
|
||||
imageId = session.TrackColours[SCHEME_MISC].WithIndex(SPR_STATION_BASE_B_SW_NE);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, height }, { 32, 32, 1 });
|
||||
|
|
|
@ -56,10 +56,11 @@ void VehicleVisualSubmarine(
|
|||
|
||||
const auto& bb = VehicleBoundboxes[carEntry->draw_order][OpenRCT2::Entity::Yaw::YawTo16(imageDirection)];
|
||||
PaintAddImageAsParent(
|
||||
session, imageId0, { 0, 0, z }, { bb.length_x, bb.length_y, bb.length_z },
|
||||
{ bb.offset_x, bb.offset_y, bb.offset_z + z });
|
||||
session, imageId0, { 0, 0, z },
|
||||
{ { bb.offset_x, bb.offset_y, bb.offset_z + z }, { bb.length_x, bb.length_y, bb.length_z } });
|
||||
PaintAddImageAsParent(
|
||||
session, imageId1, { 0, 0, z }, { bb.length_x, bb.length_y, 2 }, { bb.offset_x, bb.offset_y, bb.offset_z + z - 10 });
|
||||
session, imageId1, { 0, 0, z },
|
||||
{ { bb.offset_x, bb.offset_y, bb.offset_z + z - 10 }, { bb.length_x, bb.length_y, 2 } });
|
||||
assert(carEntry->effect_visual == 1);
|
||||
}
|
||||
|
||||
|
@ -74,7 +75,7 @@ static void SubmarineRidePaintTrackStation(
|
|||
if (direction & 1)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_SE_NW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, heightLower }, { 20, 32, 3 }, { 6, 0, heightLower });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, heightLower }, { { 6, 0, heightLower }, { 20, 32, 3 } });
|
||||
|
||||
PaintUtilPushTunnelRight(session, height, TUNNEL_SQUARE_FLAT);
|
||||
TrackPaintUtilDrawPier(
|
||||
|
@ -83,7 +84,7 @@ static void SubmarineRidePaintTrackStation(
|
|||
else
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, heightLower }, { 32, 20, 3 }, { 0, 6, heightLower });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, heightLower }, { { 0, 6, heightLower }, { 32, 20, 3 } });
|
||||
|
||||
PaintUtilPushTunnelLeft(session, height, TUNNEL_SQUARE_FLAT);
|
||||
TrackPaintUtilDrawPier(
|
||||
|
@ -104,13 +105,13 @@ static void SubmarineRidePaintTrackFlat(
|
|||
if (direction & 1)
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_SE_NW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, heightLower }, { 20, 32, 3 }, { 6, 0, heightLower });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, heightLower }, { { 6, 0, heightLower }, { 20, 32, 3 } });
|
||||
PaintUtilPushTunnelRight(session, heightLower, TUNNEL_0);
|
||||
}
|
||||
else
|
||||
{
|
||||
imageId = session.TrackColours[SCHEME_TRACK].WithIndex(SPR_TRACK_SUBMARINE_RIDE_MINI_HELICOPTERS_FLAT_NE_SW);
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, heightLower }, { 32, 20, 3 }, { 0, 6, heightLower });
|
||||
PaintAddImageAsParent(session, imageId, { 0, 0, heightLower }, { { 0, 6, heightLower }, { 32, 20, 3 } });
|
||||
PaintUtilPushTunnelLeft(session, heightLower, TUNNEL_0);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue