From b7b31bc4b034da17fc2804efab16f339da83b949 Mon Sep 17 00:00:00 2001 From: mix <167040362+mixiate@users.noreply.github.com> Date: Tue, 18 Feb 2025 20:38:20 +0000 Subject: [PATCH] Fix #16657: Mine Ride right S-bend uses Mini Roller Coaster sprite --- distribution/changelog.txt | 1 + resources/g2/sprites.json | 5 +++++ resources/g2/track/mine_ride/19471.png | Bin 0 -> 5263 bytes src/openrct2/SpriteIds.h | 6 +++++- src/openrct2/paint/track/coaster/MineRide.cpp | 4 ++-- 5 files changed, 13 insertions(+), 3 deletions(-) create mode 100644 resources/g2/track/mine_ride/19471.png diff --git a/distribution/changelog.txt b/distribution/changelog.txt index 635b4059dd..96f12f74b5 100644 --- a/distribution/changelog.txt +++ b/distribution/changelog.txt @@ -4,6 +4,7 @@ - Fix: [#1972, #11679] Vehicles passing by toilets can cause them to glitch (original bug). - Fix: [#9999, #10000, #10001, #10002, #10003] Truncated scenario strings when using Catalan, Czech, Japanese, Polish or Russian. - Fix: [#16357] Chairlift station covers draw incorrectly. +- Fix: [#16657] Mine Ride right S-bend uses Mini Roller Coaster sprite (original bug). - Fix: [#18436] Scenery on the same tile as steep to vertical track can draw over the track (original bug). - Fix: [#21768] Dirty blocks debug overlay is rendered incorrectly on high DPI screens. - Fix: [#22229] Opening a park save file from a newer version of OpenRCT2 yields an unhelpful error message. diff --git a/resources/g2/sprites.json b/resources/g2/sprites.json index 201f0062aa..d3c47c0317 100644 --- a/resources/g2/sprites.json +++ b/resources/g2/sprites.json @@ -23369,6 +23369,11 @@ "y": 7, "palette": "keep" }, + { + "path": "track/mine_ride/19471.png", + "x": -32, + "y": -4 + }, { "path": "support/flat_to_steep_1_1.png", "x": -32, diff --git a/resources/g2/track/mine_ride/19471.png b/resources/g2/track/mine_ride/19471.png new file mode 100644 index 0000000000000000000000000000000000000000..516a2c45cca5305cb5bf97397ea4fab2773782de GIT binary patch literal 5263 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 La(AzIc*DN|lEl8r literal 0 HcmV?d00001 diff --git a/src/openrct2/SpriteIds.h b/src/openrct2/SpriteIds.h index 9c1e7b5777..181fc300eb 100644 --- a/src/openrct2/SpriteIds.h +++ b/src/openrct2/SpriteIds.h @@ -1543,9 +1543,13 @@ enum : ImageIndex SPR_G2_BOAT_HIRE_TRACK_S_BEND = SPR_G2_BOAT_HIRE_TRACK_FLAT_DIAGONAL + 3, SPR_G2_BOAT_HIRE_END = SPR_G2_BOAT_HIRE_TRACK_S_BEND + 32, + SPR_G2_MINE_RIDE_BEGIN = SPR_G2_BOAT_HIRE_END, + SPR_G2_MINE_RIDE_TRACK_19471 = SPR_G2_MINE_RIDE_BEGIN, + SPR_G2_MINE_RIDE_END = SPR_G2_MINE_RIDE_TRACK_19471 + 1, + // G2 Supports - SPR_G2_SUPPORT_WOODEN_TRUSS = SPR_G2_BOAT_HIRE_END, + SPR_G2_SUPPORT_WOODEN_TRUSS = SPR_G2_MINE_RIDE_END, SPR_G2_SUPPORT_WOODEN_MINE = SPR_G2_SUPPORT_WOODEN_TRUSS + 32, SPR_G2_SUPPORT_END = SPR_G2_SUPPORT_WOODEN_MINE + 32, diff --git a/src/openrct2/paint/track/coaster/MineRide.cpp b/src/openrct2/paint/track/coaster/MineRide.cpp index 956ef34c0d..78887a0d17 100644 --- a/src/openrct2/paint/track/coaster/MineRide.cpp +++ b/src/openrct2/paint/track/coaster/MineRide.cpp @@ -1228,7 +1228,7 @@ static void MineRideTrackSBendRight( break; case 2: PaintAddImageAsParentRotated( - session, direction, session.TrackColours.WithIndex(19471), { 0, 0, height }, + session, direction, session.TrackColours.WithIndex(SPR_G2_MINE_RIDE_TRACK_19471), { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); break; case 3: @@ -1323,7 +1323,7 @@ static void MineRideTrackSBendRight( { case 0: PaintAddImageAsParentRotated( - session, direction, session.TrackColours.WithIndex(19471), { 0, 0, height }, + session, direction, session.TrackColours.WithIndex(SPR_G2_MINE_RIDE_TRACK_19471), { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); break; case 1: