tron@2186: /* $Id$ */ tron@2186: truelight@1542: typedef struct DrawTrackSeqStruct { celestar@2187: SpriteID image; truelight@1542: byte subcoord_x; truelight@1542: byte subcoord_y; truelight@1542: byte width; truelight@1542: byte height; truelight@1542: } DrawTrackSeqStruct; truelight@1542: tron@1399: #define TILE_SEQ_BEGIN(x) { x, 0, 0, 0, 0 }, tron@1399: #define TILE_SEQ_LINE(a, b, c, d, e) { a, b, c, d, e }, tron@1399: #define TILE_SEQ_END() { 0, 0, 0, 0, 0 } truelight@0: tron@1399: static const DrawTrackSeqStruct _track_depot_layout_table_0[] = { tron@3270: TILE_SEQ_BEGIN(SPR_FLAT_GRASS_TILE) tron@3270: TILE_SEQ_LINE(SPR_RAIL_DEPOT_NE | PALETTE_MODIFIER_COLOR, 2, 13, 13, 1) truelight@0: TILE_SEQ_END() truelight@0: }; truelight@0: tron@1399: static const DrawTrackSeqStruct _track_depot_layout_table_1[] = { tron@3270: TILE_SEQ_BEGIN(SPR_RAIL_TRACK_Y | PALETTE_MODIFIER_COLOR) tron@3270: TILE_SEQ_LINE(SPR_RAIL_DEPOT_SE_1 | PALETTE_MODIFIER_COLOR, 2, 2, 1, 13) tron@3270: TILE_SEQ_LINE(SPR_RAIL_DEPOT_SE_2 | PALETTE_MODIFIER_COLOR, 13, 2, 1, 13) truelight@0: TILE_SEQ_END() truelight@0: }; truelight@0: tron@1399: static const DrawTrackSeqStruct _track_depot_layout_table_2[] = { tron@3270: TILE_SEQ_BEGIN(SPR_RAIL_TRACK_X | PALETTE_MODIFIER_COLOR) tron@3270: TILE_SEQ_LINE(SPR_RAIL_DEPOT_SW_1 | PALETTE_MODIFIER_COLOR, 2, 2, 13, 1) tron@3270: TILE_SEQ_LINE(SPR_RAIL_DEPOT_SW_2 | PALETTE_MODIFIER_COLOR, 2, 13, 13, 1) truelight@0: TILE_SEQ_END() truelight@0: }; truelight@0: tron@1399: static const DrawTrackSeqStruct _track_depot_layout_table_3[] = { tron@3270: TILE_SEQ_BEGIN(SPR_FLAT_GRASS_TILE) tron@3270: TILE_SEQ_LINE(SPR_RAIL_DEPOT_NW | PALETTE_MODIFIER_COLOR, 13, 2, 1, 13) truelight@0: TILE_SEQ_END() truelight@0: }; truelight@0: tron@1399: static const DrawTrackSeqStruct _track_waypoint_table_0[] = { tron@3270: TILE_SEQ_BEGIN(SPR_RAIL_TRACK_X | PALETTE_MODIFIER_COLOR) tron@2571: TILE_SEQ_LINE(PALETTE_MODIFIER_COLOR | SPR_WAYPOINT_X_1, 0, 0, 16, 5) tron@2571: TILE_SEQ_LINE(PALETTE_MODIFIER_COLOR | SPR_WAYPOINT_X_2, 0, 11, 16, 5) truelight@0: TILE_SEQ_END() truelight@0: }; truelight@0: tron@1399: static const DrawTrackSeqStruct _track_waypoint_table_1[] = { tron@3270: TILE_SEQ_BEGIN(SPR_RAIL_TRACK_Y | PALETTE_MODIFIER_COLOR) tron@2571: TILE_SEQ_LINE(PALETTE_MODIFIER_COLOR | SPR_WAYPOINT_Y_1, 0, 0, 5, 16) tron@2571: TILE_SEQ_LINE(PALETTE_MODIFIER_COLOR | SPR_WAYPOINT_Y_2, 11, 0, 5, 16) truelight@0: TILE_SEQ_END() truelight@0: }; truelight@0: truelight@0: tron@1399: static const DrawTrackSeqStruct* const _track_depot_layout_table[] = { truelight@0: _track_depot_layout_table_0, truelight@0: _track_depot_layout_table_1, truelight@0: _track_depot_layout_table_2, truelight@0: _track_depot_layout_table_3, truelight@0: darkvater@395: _track_waypoint_table_0, darkvater@395: _track_waypoint_table_1, truelight@0: };