Clean up SpritBoundBox2

This commit is contained in:
Tiago A. Reul 2023-06-20 20:24:04 -03:00 committed by GitHub
parent ce1695fab8
commit 97427743a4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 684 additions and 396 deletions

File diff suppressed because it is too large Load Diff

View File

@ -12,6 +12,7 @@
#include "../../config/Config.h" #include "../../config/Config.h"
#include "../../drawing/Drawing.h" #include "../../drawing/Drawing.h"
#include "../../interface/Viewport.h" #include "../../interface/Viewport.h"
#include "../../paint/Boundbox.h"
#include "../../paint/Paint.h" #include "../../paint/Paint.h"
#include "../../paint/Supports.h" #include "../../paint/Supports.h"
#include "../../paint/tile_element/Paint.Surface.h" #include "../../paint/tile_element/Paint.Surface.h"
@ -1128,50 +1129,43 @@ static void WoodenRCTrackRightQuarterTurn5(
SPR_WOODEN_RC_QUARTER_TURN_5_SW_SE_SEQ_0, SPR_WOODEN_RC_QUARTER_TURN_5_SW_SE_SEQ_0,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SW_SE_SEQ_0, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SW_SE_SEQ_0,
{ 0, 2, 0 }, { 0, 2, 0 },
{ 0, 2, 0 }, BoundBoxXYZ({ 0, 2, 0 }, { 32, 32, 2 }),
{ 32, 32, 2 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_SW_SE_SEQ_2, SPR_WOODEN_RC_QUARTER_TURN_5_SW_SE_SEQ_2,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SW_SE_SEQ_2, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SW_SE_SEQ_2,
{ 0, 16, 0 }, { 0, 16, 0 },
{ 0, 16, 0 }, BoundBoxXYZ({ 0, 16, 0 }, { 32, 16, 2 }),
{ 32, 16, 2 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_SW_SE_SEQ_3, SPR_WOODEN_RC_QUARTER_TURN_5_SW_SE_SEQ_3,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SW_SE_SEQ_3, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SW_SE_SEQ_3,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 16, 16, 2 }),
{ 16, 16, 2 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_SW_SE_SEQ_5, SPR_WOODEN_RC_QUARTER_TURN_5_SW_SE_SEQ_5,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SW_SE_SEQ_5, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SW_SE_SEQ_5,
{ 16, 0, 0 }, { 16, 0, 0 },
{ 16, 0, 0 }, BoundBoxXYZ({ 16, 0, 0 }, { 16, 32, 2 }),
{ 16, 32, 2 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_SW_SE_SEQ_6, SPR_WOODEN_RC_QUARTER_TURN_5_SW_SE_SEQ_6,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SW_SE_SEQ_6, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SW_SE_SEQ_6,
{ 2, 0, 0 }, { 2, 0, 0 },
{ 2, 0, 0 }, BoundBoxXYZ({ 2, 0, 0 }, { 32, 32, 2 }),
{ 32, 32, 2 },
}, },
}, },
{ {
@ -1179,50 +1173,43 @@ static void WoodenRCTrackRightQuarterTurn5(
SPR_WOODEN_RC_QUARTER_TURN_5_NW_SW_SEQ_0, SPR_WOODEN_RC_QUARTER_TURN_5_NW_SW_SEQ_0,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NW_SW_SEQ_0, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NW_SW_SEQ_0,
{ 2, 0, 0 }, { 2, 0, 0 },
{ 2, 0, 0 }, BoundBoxXYZ({ 2, 0, 0 }, { 32, 32, 2 }),
{ 32, 32, 2 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_NW_SW_SEQ_2, SPR_WOODEN_RC_QUARTER_TURN_5_NW_SW_SEQ_2,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NW_SW_SEQ_2, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NW_SW_SEQ_2,
{ 16, 0, 0 }, { 16, 0, 0 },
{ 16, 0, 0 }, BoundBoxXYZ({ 16, 0, 0 }, { 16, 34, 2 }),
{ 16, 34, 2 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_NW_SW_SEQ_3, SPR_WOODEN_RC_QUARTER_TURN_5_NW_SW_SEQ_3,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NW_SW_SEQ_3, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NW_SW_SEQ_3,
{ 0, 16, 0 }, { 0, 16, 0 },
{ 0, 16, 0 }, BoundBoxXYZ({ 0, 16, 0 }, { 16, 16, 2 }),
{ 16, 16, 2 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_NW_SW_SEQ_5, SPR_WOODEN_RC_QUARTER_TURN_5_NW_SW_SEQ_5,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NW_SW_SEQ_5, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NW_SW_SEQ_5,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 32, 16, 2 }),
{ 32, 16, 2 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_NW_SW_SEQ_6, SPR_WOODEN_RC_QUARTER_TURN_5_NW_SW_SEQ_6,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NW_SW_SEQ_6, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NW_SW_SEQ_6,
{ 0, 2, 0 }, { 0, 2, 0 },
{ 0, 2, 0 }, BoundBoxXYZ({ 0, 2, 0 }, { 32, 27, 2 }),
{ 32, 27, 2 },
}, },
}, },
{ {
@ -1230,50 +1217,43 @@ static void WoodenRCTrackRightQuarterTurn5(
SPR_WOODEN_RC_QUARTER_TURN_5_NE_NW_SEQ_0, SPR_WOODEN_RC_QUARTER_TURN_5_NE_NW_SEQ_0,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NE_NW_SEQ_0, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NE_NW_SEQ_0,
{ 0, 2, 0 }, { 0, 2, 0 },
{ 0, 2, 0 }, BoundBoxXYZ({ 0, 2, 0 }, { 32, 27, 2 }),
{ 32, 27, 2 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_NE_NW_SEQ_2, SPR_WOODEN_RC_QUARTER_TURN_5_NE_NW_SEQ_2,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NE_NW_SEQ_2, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NE_NW_SEQ_2,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 32, 16, 2 }),
{ 32, 16, 2 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_NE_NW_SEQ_3, SPR_WOODEN_RC_QUARTER_TURN_5_NE_NW_SEQ_3,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NE_NW_SEQ_3, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NE_NW_SEQ_3,
{ 16, 16, 0 }, { 16, 16, 0 },
{ 16, 16, 0 }, BoundBoxXYZ({ 16, 16, 0 }, { 16, 16, 2 }),
{ 16, 16, 2 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_NE_NW_SEQ_5, SPR_WOODEN_RC_QUARTER_TURN_5_NE_NW_SEQ_5,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NE_NW_SEQ_5, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NE_NW_SEQ_5,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 16, 32, 2 }),
{ 16, 32, 2 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_NE_NW_SEQ_6, SPR_WOODEN_RC_QUARTER_TURN_5_NE_NW_SEQ_6,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NE_NW_SEQ_6, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_NE_NW_SEQ_6,
{ 2, 0, 0 }, { 2, 0, 0 },
{ 2, 0, 0 }, BoundBoxXYZ({ 2, 0, 0 }, { 27, 32, 2 }),
{ 27, 32, 2 },
}, },
}, },
{ {
@ -1281,50 +1261,43 @@ static void WoodenRCTrackRightQuarterTurn5(
SPR_WOODEN_RC_QUARTER_TURN_5_SE_NE_SEQ_0, SPR_WOODEN_RC_QUARTER_TURN_5_SE_NE_SEQ_0,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SE_NE_SEQ_0, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SE_NE_SEQ_0,
{ 2, 0, 0 }, { 2, 0, 0 },
{ 2, 0, 0 }, BoundBoxXYZ({ 2, 0, 0 }, { 27, 32, 2 }),
{ 27, 32, 2 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_SE_NE_SEQ_2, SPR_WOODEN_RC_QUARTER_TURN_5_SE_NE_SEQ_2,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SE_NE_SEQ_2, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SE_NE_SEQ_2,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 16, 32, 2 }),
{ 16, 32, 2 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_SE_NE_SEQ_3, SPR_WOODEN_RC_QUARTER_TURN_5_SE_NE_SEQ_3,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SE_NE_SEQ_3, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SE_NE_SEQ_3,
{ 16, 0, 0 }, { 16, 0, 0 },
{ 16, 0, 0 }, BoundBoxXYZ({ 16, 0, 0 }, { 16, 16, 2 }),
{ 16, 16, 2 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_SE_NE_SEQ_5, SPR_WOODEN_RC_QUARTER_TURN_5_SE_NE_SEQ_5,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SE_NE_SEQ_5, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SE_NE_SEQ_5,
{ 0, 16, 0 }, { 0, 16, 0 },
{ 0, 16, 0 }, BoundBoxXYZ({ 0, 16, 0 }, { 32, 16, 2 }),
{ 32, 16, 2 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_SE_NE_SEQ_6, SPR_WOODEN_RC_QUARTER_TURN_5_SE_NE_SEQ_6,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SE_NE_SEQ_6, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_SE_NE_SEQ_6,
{ 0, 2, 0 }, { 0, 2, 0 },
{ 0, 2, 0 }, BoundBoxXYZ({ 0, 2, 0 }, { 32, 32, 2 }),
{ 32, 32, 2 },
}, },
}, },
}, },
@ -1334,120 +1307,106 @@ static void WoodenRCTrackRightQuarterTurn5(
SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_SW_SE_SEQ_0, SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_SW_SE_SEQ_0,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_0, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_0,
{ 0, 2, 0 }, { 0, 2, 0 },
{ 0, 2, 27 }, BoundBoxXYZ({ 0, 2, 27 }, { 32, 32, 0 }),
{ 32, 32, 0 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_SW_SE_SEQ_2, SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_SW_SE_SEQ_2,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_2, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_2,
{ 0, 16, 0 }, { 0, 16, 0 },
{ 0, 16, 27 }, BoundBoxXYZ({ 0, 16, 27 }, { 32, 16, 0 }),
{ 32, 16, 0 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_SW_SE_SEQ_3, SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_SW_SE_SEQ_3,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_3, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_3,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 27 }, BoundBoxXYZ({ 0, 0, 27 }, { 16, 16, 0 }),
{ 16, 16, 0 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_SW_SE_SEQ_5, SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_SW_SE_SEQ_5,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_5, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_5,
{ 16, 0, 0 }, { 16, 0, 0 },
{ 16, 0, 27 }, BoundBoxXYZ({ 16, 0, 27 }, { 16, 32, 0 }),
{ 16, 32, 0 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_SW_SE_SEQ_6, SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_SW_SE_SEQ_6,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_6, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_6,
{ 2, 0, 0 }, { 2, 0, 0 },
{ 2, 0, 27 }, BoundBoxXYZ({ 2, 0, 27 }, { 32, 32, 0 }),
{ 32, 32, 0 },
}, },
}, },
{ {
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
}, },
{ {
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_NE_NW_SEQ_0, SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_NE_NW_SEQ_0,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_0, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_0,
{ 0, 2, 0 }, { 0, 2, 0 },
{ 0, 2, 27 }, BoundBoxXYZ({ 0, 2, 27 }, { 32, 27, 0 }),
{ 32, 27, 0 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_NE_NW_SEQ_2, SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_NE_NW_SEQ_2,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_2, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_2,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 27 }, BoundBoxXYZ({ 0, 0, 27 }, { 32, 16, 0 }),
{ 32, 16, 0 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_NE_NW_SEQ_3, SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_NE_NW_SEQ_3,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_3, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_3,
{ 16, 16, 0 }, { 16, 16, 0 },
{ 16, 16, 27 }, BoundBoxXYZ({ 16, 16, 27 }, { 16, 16, 0 }),
{ 16, 16, 0 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_NE_NW_SEQ_5, SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_NE_NW_SEQ_5,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_5, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_5,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 27 }, BoundBoxXYZ({ 0, 0, 27 }, { 16, 32, 0 }),
{ 16, 32, 0 },
}, },
{ {
SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_NE_NW_SEQ_6, SPR_WOODEN_RC_QUARTER_TURN_5_FRONT_NE_NW_SEQ_6,
SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_6, SPR_WOODEN_RC_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_6,
{ 2, 0, 0 }, { 2, 0, 0 },
{ 2, 0, 27 }, BoundBoxXYZ({ 2, 0, 27 }, { 27, 32, 0 }),
{ 27, 32, 0 },
}, },
}, },
{ {
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
}, },
}, },
}; };
@ -1634,50 +1593,43 @@ static void WoodenRCTrackBankedRightQuarterTurn5(
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SW_SE_SEQ_0, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SW_SE_SEQ_0,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SW_SE_SEQ_0, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SW_SE_SEQ_0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 2, 0 }, BoundBoxXYZ({ 0, 2, 0 }, { 32, 32, 2 }),
{ 32, 32, 2 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SW_SE_SEQ_2, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SW_SE_SEQ_2,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SW_SE_SEQ_2, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SW_SE_SEQ_2,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 16, 0 }, BoundBoxXYZ({ 0, 16, 0 }, { 32, 16, 2 }),
{ 32, 16, 2 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SW_SE_SEQ_3, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SW_SE_SEQ_3,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SW_SE_SEQ_3, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SW_SE_SEQ_3,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 16, 16, 2 }),
{ 16, 16, 2 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SW_SE_SEQ_5, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SW_SE_SEQ_5,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SW_SE_SEQ_5, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SW_SE_SEQ_5,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 16, 0, 0 }, BoundBoxXYZ({ 16, 0, 0 }, { 16, 32, 2 }),
{ 16, 32, 2 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SW_SE_SEQ_6, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SW_SE_SEQ_6,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SW_SE_SEQ_6, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SW_SE_SEQ_6,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 2, 0, 0 }, BoundBoxXYZ({ 2, 0, 0 }, { 32, 32, 2 }),
{ 32, 32, 2 },
}, },
}, },
{ {
@ -1685,50 +1637,43 @@ static void WoodenRCTrackBankedRightQuarterTurn5(
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NW_SW_SEQ_0, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NW_SW_SEQ_0,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NW_SW_SEQ_0, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NW_SW_SEQ_0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 2, 0, 0 }, BoundBoxXYZ({ 2, 0, 0 }, { 32, 32, 2 }),
{ 32, 32, 2 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NW_SW_SEQ_2, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NW_SW_SEQ_2,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NW_SW_SEQ_2, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NW_SW_SEQ_2,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 16, 0, 0 }, BoundBoxXYZ({ 16, 0, 0 }, { 16, 32, 2 }),
{ 16, 32, 2 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NW_SW_SEQ_3, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NW_SW_SEQ_3,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NW_SW_SEQ_3, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NW_SW_SEQ_3,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 16, 0 }, BoundBoxXYZ({ 0, 16, 0 }, { 16, 16, 2 }),
{ 16, 16, 2 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NW_SW_SEQ_5, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NW_SW_SEQ_5,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NW_SW_SEQ_5, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NW_SW_SEQ_5,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 32, 16, 2 }),
{ 32, 16, 2 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NW_SW_SEQ_6, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NW_SW_SEQ_6,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NW_SW_SEQ_6, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NW_SW_SEQ_6,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 2, 0 }, BoundBoxXYZ({ 0, 2, 0 }, { 32, 27, 2 }),
{ 32, 27, 2 },
}, },
}, },
{ {
@ -1736,50 +1681,43 @@ static void WoodenRCTrackBankedRightQuarterTurn5(
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NE_NW_SEQ_0, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NE_NW_SEQ_0,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NE_NW_SEQ_0, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NE_NW_SEQ_0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 2, 0 }, BoundBoxXYZ({ 0, 2, 0 }, { 32, 27, 2 }),
{ 32, 27, 2 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NE_NW_SEQ_2, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NE_NW_SEQ_2,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NE_NW_SEQ_2, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NE_NW_SEQ_2,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 32, 16, 2 }),
{ 32, 16, 2 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NE_NW_SEQ_3, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NE_NW_SEQ_3,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NE_NW_SEQ_3, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NE_NW_SEQ_3,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 16, 16, 0 }, BoundBoxXYZ({ 16, 16, 0 }, { 16, 16, 2 }),
{ 16, 16, 2 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NE_NW_SEQ_5, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NE_NW_SEQ_5,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NE_NW_SEQ_5, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NE_NW_SEQ_5,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 16, 32, 2 }),
{ 16, 32, 2 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NE_NW_SEQ_6, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_NE_NW_SEQ_6,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NE_NW_SEQ_6, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_NE_NW_SEQ_6,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 2, 0, 0 }, BoundBoxXYZ({ 2, 0, 0 }, { 27, 32, 2 }),
{ 27, 32, 2 },
}, },
}, },
{ {
@ -1787,50 +1725,43 @@ static void WoodenRCTrackBankedRightQuarterTurn5(
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SE_NE_SEQ_0, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SE_NE_SEQ_0,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SE_NE_SEQ_0, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SE_NE_SEQ_0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 2, 0, 0 }, BoundBoxXYZ({ 2, 0, 0 }, { 27, 32, 2 }),
{ 27, 32, 2 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SE_NE_SEQ_2, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SE_NE_SEQ_2,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SE_NE_SEQ_2, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SE_NE_SEQ_2,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 16, 32, 2 }),
{ 16, 32, 2 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SE_NE_SEQ_3, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SE_NE_SEQ_3,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SE_NE_SEQ_3, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SE_NE_SEQ_3,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 16, 0, 0 }, BoundBoxXYZ({ 16, 0, 0 }, { 16, 16, 2 }),
{ 16, 16, 2 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SE_NE_SEQ_5, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SE_NE_SEQ_5,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SE_NE_SEQ_5, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SE_NE_SEQ_5,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 16, 0 }, BoundBoxXYZ({ 0, 16, 0 }, { 32, 16, 2 }),
{ 32, 16, 2 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SE_NE_SEQ_6, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_SE_NE_SEQ_6,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SE_NE_SEQ_6, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_SE_NE_SEQ_6,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 2, 0 }, BoundBoxXYZ({ 0, 2, 0 }, { 32, 32, 2 }),
{ 32, 32, 2 },
}, },
}, },
}, },
@ -1840,120 +1771,106 @@ static void WoodenRCTrackBankedRightQuarterTurn5(
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_SW_SE_SEQ_0, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_SW_SE_SEQ_0,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_0, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 2, 27 }, BoundBoxXYZ({ 0, 2, 27 }, { 32, 32, 0 }),
{ 32, 32, 0 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_SW_SE_SEQ_2, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_SW_SE_SEQ_2,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_2, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_2,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 16, 27 }, BoundBoxXYZ({ 0, 16, 27 }, { 32, 16, 0 }),
{ 32, 16, 0 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_SW_SE_SEQ_3, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_SW_SE_SEQ_3,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_3, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_3,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 27 }, BoundBoxXYZ({ 0, 0, 27 }, { 16, 16, 0 }),
{ 16, 16, 0 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_SW_SE_SEQ_5, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_SW_SE_SEQ_5,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_5, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_5,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 16, 0, 27 }, BoundBoxXYZ({ 16, 0, 27 }, { 16, 32, 0 }),
{ 16, 32, 0 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_SW_SE_SEQ_6, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_SW_SE_SEQ_6,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_6, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_SW_SE_SEQ_6,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 2, 0, 27 }, BoundBoxXYZ({ 2, 0, 27 }, { 32, 32, 0 }),
{ 32, 32, 0 },
}, },
}, },
{ {
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
}, },
{ {
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_NE_NW_SEQ_0, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_NE_NW_SEQ_0,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_0, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 2, 27 }, BoundBoxXYZ({ 0, 2, 27 }, { 32, 27, 0 }),
{ 32, 27, 0 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_NE_NW_SEQ_2, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_NE_NW_SEQ_2,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_2, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_2,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 27 }, BoundBoxXYZ({ 0, 0, 27 }, { 32, 16, 0 }),
{ 32, 16, 0 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_NE_NW_SEQ_3, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_NE_NW_SEQ_3,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_3, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_3,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 16, 16, 27 }, BoundBoxXYZ({ 16, 16, 27 }, { 16, 16, 0 }),
{ 16, 16, 0 },
}, },
{ {
0, 0,
0, 0,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }),
{ 0, 0, 0 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_NE_NW_SEQ_5, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_NE_NW_SEQ_5,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_5, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_5,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 0, 0, 27 }, BoundBoxXYZ({ 0, 0, 27 }, { 16, 32, 0 }),
{ 16, 32, 0 },
}, },
{ {
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_NE_NW_SEQ_6, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_FRONT_NE_NW_SEQ_6,
SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_6, SPR_WOODEN_RC_BANKED_QUARTER_TURN_5_RAILS_FRONT_NE_NW_SEQ_6,
{ 0, 0, 0 }, { 0, 0, 0 },
{ 2, 0, 27 }, BoundBoxXYZ({ 2, 0, 27 }, { 27, 32, 0 }),
{ 27, 32, 0 },
}, },
}, },
{ {
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
{ 0, 0, { 0, 0, 0 }, { 0, 0, 0 }, { 0, 0, 0 } }, { 0, 0, { 0, 0, 0 }, BoundBoxXYZ({ 0, 0, 0 }, { 0, 0, 0 }) },
}, },
}, },
}; };

View File

@ -9,6 +9,8 @@
#pragma once #pragma once
#include "../../drawing/ImageId.hpp"
#include "../../paint/Boundbox.h"
#include "../../paint/Paint.h" #include "../../paint/Paint.h"
#include "../../world/Location.hpp" #include "../../world/Location.hpp"
#include "../TrackPaint.h" #include "../TrackPaint.h"
@ -17,11 +19,10 @@
struct SpriteBoundBox2 struct SpriteBoundBox2
{ {
uint32_t sprite_id_a; ImageIndex ImageIdA;
uint32_t sprite_id_b; ImageIndex ImageIdB;
CoordsXYZ offset; CoordsXYZ offset;
CoordsXYZ bb_offset; ::BoundBoxXYZ BoundBox;
CoordsXYZ bb_size;
}; };
template<bool isClassic> ImageId WoodenRCGetTrackColour(const PaintSession& session) template<bool isClassic> ImageId WoodenRCGetTrackColour(const PaintSession& session)
@ -50,19 +51,19 @@ PaintStruct* WoodenRCTrackPaint(
template<bool isClassic> void WoodenRCTrackPaintBb(PaintSession& session, const SpriteBoundBox2* bb, int16_t height) template<bool isClassic> void WoodenRCTrackPaintBb(PaintSession& session, const SpriteBoundBox2* bb, int16_t height)
{ {
if (bb->sprite_id_a == 0) if (bb->ImageIdA == 0)
return; return;
ImageId imageId = WoodenRCGetTrackColour<isClassic>(session).WithIndex(bb->sprite_id_a); ImageId imageId = WoodenRCGetTrackColour<isClassic>(session).WithIndex(bb->ImageIdA);
PaintAddImageAsParent( PaintAddImageAsParent(
session, imageId, { bb->offset.x, bb->offset.y, height + 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 }); { { bb->BoundBox.offset.x, bb->BoundBox.offset.y, height + bb->BoundBox.offset.z }, bb->BoundBox.length });
if (bb->sprite_id_b != 0) if (bb->ImageIdB != 0)
{ {
ImageId railsImageId = WoodenRCGetRailsColour(session).WithIndex(bb->sprite_id_b); ImageId railsImageId = WoodenRCGetRailsColour(session).WithIndex(bb->ImageIdB);
PaintAddImageAsChild( PaintAddImageAsChild(
session, railsImageId, { bb->offset.x, bb->offset.y, height + bb->offset.z }, session, railsImageId, { bb->offset.x, bb->offset.y, height + bb->offset.z },
{ { bb->bb_offset, height + bb->bb_offset.z }, bb->bb_size }); { { bb->BoundBox.offset, height + bb->BoundBox.offset.z }, bb->BoundBox.length });
} }
} }