|
|
|
@ -47,45 +47,62 @@ static const RoadDriveEntry _roadveh_drive_data_1[] = {
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_2[] = {
|
|
|
|
|
{5, 0},
|
|
|
|
|
{4, 1},
|
|
|
|
|
{3, 2},
|
|
|
|
|
{2, 3},
|
|
|
|
|
{1, 4},
|
|
|
|
|
{5, 1},
|
|
|
|
|
{5, 2},
|
|
|
|
|
{4, 3},
|
|
|
|
|
{3, 4},
|
|
|
|
|
{2, 5},
|
|
|
|
|
{1, 5},
|
|
|
|
|
{0, 5},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_NE, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_3[] = {
|
|
|
|
|
{15, 6},
|
|
|
|
|
{14, 7},
|
|
|
|
|
{13, 8},
|
|
|
|
|
{12, 9},
|
|
|
|
|
{11, 10},
|
|
|
|
|
{10, 11},
|
|
|
|
|
{ 9, 12},
|
|
|
|
|
{ 8, 13},
|
|
|
|
|
{ 7, 14},
|
|
|
|
|
{ 6, 15},
|
|
|
|
|
{15, 5},
|
|
|
|
|
{14, 5},
|
|
|
|
|
{13, 5},
|
|
|
|
|
{12, 5},
|
|
|
|
|
{11, 5},
|
|
|
|
|
{10, 5},
|
|
|
|
|
{ 9, 6},
|
|
|
|
|
{ 8, 7},
|
|
|
|
|
{ 7, 8},
|
|
|
|
|
{ 6, 9},
|
|
|
|
|
{ 5, 10},
|
|
|
|
|
{ 5, 11},
|
|
|
|
|
{ 5, 12},
|
|
|
|
|
{ 5, 13},
|
|
|
|
|
{ 5, 14},
|
|
|
|
|
{ 5, 15},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_SE, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_4[] = {
|
|
|
|
|
{ 6, 0},
|
|
|
|
|
{ 7, 1},
|
|
|
|
|
{ 8, 2},
|
|
|
|
|
{ 9, 3},
|
|
|
|
|
{10, 4},
|
|
|
|
|
{11, 5},
|
|
|
|
|
{12, 6},
|
|
|
|
|
{13, 7},
|
|
|
|
|
{14, 8},
|
|
|
|
|
{ 5, 0},
|
|
|
|
|
{ 5, 1},
|
|
|
|
|
{ 5, 2},
|
|
|
|
|
{ 5, 3},
|
|
|
|
|
{ 5, 4},
|
|
|
|
|
{ 5, 5},
|
|
|
|
|
{ 6, 6},
|
|
|
|
|
{ 7, 7},
|
|
|
|
|
{ 8, 8},
|
|
|
|
|
{ 9, 9},
|
|
|
|
|
{10, 9},
|
|
|
|
|
{11, 9},
|
|
|
|
|
{12, 9},
|
|
|
|
|
{13, 9},
|
|
|
|
|
{14, 9},
|
|
|
|
|
{15, 9},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_SW, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_5[] = {
|
|
|
|
|
{0, 10},
|
|
|
|
|
{1, 11},
|
|
|
|
|
{2, 12},
|
|
|
|
|
{3, 13},
|
|
|
|
|
{4, 14},
|
|
|
|
|
{0, 9},
|
|
|
|
|
{1, 9},
|
|
|
|
|
{2, 9},
|
|
|
|
|
{3, 10},
|
|
|
|
|
{4, 11},
|
|
|
|
|
{5, 12},
|
|
|
|
|
{5, 13},
|
|
|
|
|
{5, 14},
|
|
|
|
|
{5, 15},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_SE, 0}
|
|
|
|
|
};
|
|
|
|
@ -142,47 +159,62 @@ static const RoadDriveEntry _roadveh_drive_data_9[] = {
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_NW, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_10[] = {
|
|
|
|
|
{0, 8},
|
|
|
|
|
{1, 7},
|
|
|
|
|
{2, 6},
|
|
|
|
|
{3, 5},
|
|
|
|
|
{4, 4},
|
|
|
|
|
{5, 3},
|
|
|
|
|
{6, 2},
|
|
|
|
|
{7, 1},
|
|
|
|
|
{8, 0},
|
|
|
|
|
{0, 9},
|
|
|
|
|
{1, 9},
|
|
|
|
|
{2, 9},
|
|
|
|
|
{3, 9},
|
|
|
|
|
{4, 9},
|
|
|
|
|
{5, 9},
|
|
|
|
|
{6, 8},
|
|
|
|
|
{7, 7},
|
|
|
|
|
{8, 6},
|
|
|
|
|
{9, 5},
|
|
|
|
|
{9, 4},
|
|
|
|
|
{9, 3},
|
|
|
|
|
{9, 2},
|
|
|
|
|
{9, 1},
|
|
|
|
|
{9, 0},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_NW, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_11[] = {
|
|
|
|
|
{ 9, 15},
|
|
|
|
|
{10, 14},
|
|
|
|
|
{11, 13},
|
|
|
|
|
{12, 12},
|
|
|
|
|
{13, 11},
|
|
|
|
|
{14, 10},
|
|
|
|
|
{ 9, 14},
|
|
|
|
|
{ 9, 13},
|
|
|
|
|
{10, 12},
|
|
|
|
|
{11, 11},
|
|
|
|
|
{12, 10},
|
|
|
|
|
{13, 9},
|
|
|
|
|
{14, 9},
|
|
|
|
|
{15, 9},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_SW, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_12[] = {
|
|
|
|
|
{15, 5},
|
|
|
|
|
{14, 4},
|
|
|
|
|
{13, 3},
|
|
|
|
|
{12, 2},
|
|
|
|
|
{11, 1},
|
|
|
|
|
{10, 0},
|
|
|
|
|
{14, 5},
|
|
|
|
|
{13, 5},
|
|
|
|
|
{12, 4},
|
|
|
|
|
{11, 3},
|
|
|
|
|
{10, 2},
|
|
|
|
|
{ 9, 1},
|
|
|
|
|
{ 9, 0},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_NW, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_13[] = {
|
|
|
|
|
{9, 15},
|
|
|
|
|
{8, 14},
|
|
|
|
|
{7, 13},
|
|
|
|
|
{6, 12},
|
|
|
|
|
{5, 11},
|
|
|
|
|
{4, 10},
|
|
|
|
|
{3, 9},
|
|
|
|
|
{2, 8},
|
|
|
|
|
{1, 7},
|
|
|
|
|
{0, 6},
|
|
|
|
|
{9, 14},
|
|
|
|
|
{9, 13},
|
|
|
|
|
{9, 12},
|
|
|
|
|
{9, 11},
|
|
|
|
|
{9, 10},
|
|
|
|
|
{8, 9},
|
|
|
|
|
{7, 8},
|
|
|
|
|
{6, 7},
|
|
|
|
|
{5, 6},
|
|
|
|
|
{4, 5},
|
|
|
|
|
{3, 5},
|
|
|
|
|
{2, 5},
|
|
|
|
|
{1, 5},
|
|
|
|
|
{0, 5},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_NE, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_14[] = {
|
|
|
|
@ -238,46 +270,61 @@ static const RoadDriveEntry _roadveh_drive_data_17[] = {
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_SE, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_18[] = {
|
|
|
|
|
{8, 0},
|
|
|
|
|
{7, 1},
|
|
|
|
|
{6, 2},
|
|
|
|
|
{5, 3},
|
|
|
|
|
{4, 4},
|
|
|
|
|
{3, 5},
|
|
|
|
|
{2, 6},
|
|
|
|
|
{1, 7},
|
|
|
|
|
{0, 8},
|
|
|
|
|
{9, 0},
|
|
|
|
|
{9, 1},
|
|
|
|
|
{9, 2},
|
|
|
|
|
{9, 3},
|
|
|
|
|
{9, 4},
|
|
|
|
|
{9, 5},
|
|
|
|
|
{8, 6},
|
|
|
|
|
{7, 7},
|
|
|
|
|
{6, 8},
|
|
|
|
|
{5, 9},
|
|
|
|
|
{4, 9},
|
|
|
|
|
{3, 9},
|
|
|
|
|
{2, 9},
|
|
|
|
|
{1, 9},
|
|
|
|
|
{0, 9},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_NE, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_19[] = {
|
|
|
|
|
{15, 9},
|
|
|
|
|
{14, 10},
|
|
|
|
|
{13, 11},
|
|
|
|
|
{12, 12},
|
|
|
|
|
{11, 13},
|
|
|
|
|
{10, 14},
|
|
|
|
|
{14, 9},
|
|
|
|
|
{13, 9},
|
|
|
|
|
{12, 10},
|
|
|
|
|
{11, 11},
|
|
|
|
|
{10, 12},
|
|
|
|
|
{ 9, 13},
|
|
|
|
|
{ 9, 14},
|
|
|
|
|
{ 9, 15},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_SE, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_20[] = {
|
|
|
|
|
{10, 0},
|
|
|
|
|
{11, 1},
|
|
|
|
|
{12, 2},
|
|
|
|
|
{13, 3},
|
|
|
|
|
{14, 4},
|
|
|
|
|
{ 9, 0},
|
|
|
|
|
{ 9, 1},
|
|
|
|
|
{10, 2},
|
|
|
|
|
{11, 3},
|
|
|
|
|
{12, 4},
|
|
|
|
|
{13, 5},
|
|
|
|
|
{14, 5},
|
|
|
|
|
{15, 5},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_SW, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_21[] = {
|
|
|
|
|
{0, 6},
|
|
|
|
|
{1, 7},
|
|
|
|
|
{2, 8},
|
|
|
|
|
{3, 9},
|
|
|
|
|
{4, 10},
|
|
|
|
|
{5, 11},
|
|
|
|
|
{6, 12},
|
|
|
|
|
{7, 13},
|
|
|
|
|
{8, 14},
|
|
|
|
|
{0, 5},
|
|
|
|
|
{1, 5},
|
|
|
|
|
{2, 5},
|
|
|
|
|
{3, 5},
|
|
|
|
|
{4, 5},
|
|
|
|
|
{5, 6},
|
|
|
|
|
{6, 7},
|
|
|
|
|
{7, 8},
|
|
|
|
|
{8, 9},
|
|
|
|
|
{9, 10},
|
|
|
|
|
{9, 11},
|
|
|
|
|
{9, 12},
|
|
|
|
|
{9, 13},
|
|
|
|
|
{9, 14},
|
|
|
|
|
{9, 15},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_SE, 0}
|
|
|
|
|
};
|
|
|
|
@ -335,46 +382,63 @@ static const RoadDriveEntry _roadveh_drive_data_25[] = {
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_26[] = {
|
|
|
|
|
{0, 5},
|
|
|
|
|
{1, 4},
|
|
|
|
|
{2, 3},
|
|
|
|
|
{3, 2},
|
|
|
|
|
{4, 1},
|
|
|
|
|
{1, 5},
|
|
|
|
|
{2, 5},
|
|
|
|
|
{3, 4},
|
|
|
|
|
{4, 3},
|
|
|
|
|
{5, 2},
|
|
|
|
|
{5, 1},
|
|
|
|
|
{5, 0},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_NW, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_27[] = {
|
|
|
|
|
{ 6, 15},
|
|
|
|
|
{ 7, 14},
|
|
|
|
|
{ 8, 13},
|
|
|
|
|
{ 9, 12},
|
|
|
|
|
{10, 11},
|
|
|
|
|
{11, 10},
|
|
|
|
|
{12, 9},
|
|
|
|
|
{13, 8},
|
|
|
|
|
{14, 7},
|
|
|
|
|
{15, 6},
|
|
|
|
|
{ 5, 15},
|
|
|
|
|
{ 5, 14},
|
|
|
|
|
{ 5, 13},
|
|
|
|
|
{ 5, 12},
|
|
|
|
|
{ 5, 11},
|
|
|
|
|
{ 5, 10},
|
|
|
|
|
{ 6, 9},
|
|
|
|
|
{ 7, 8},
|
|
|
|
|
{ 8, 7},
|
|
|
|
|
{ 9, 6},
|
|
|
|
|
{10, 5},
|
|
|
|
|
{11, 5},
|
|
|
|
|
{12, 5},
|
|
|
|
|
{13, 5},
|
|
|
|
|
{14, 5},
|
|
|
|
|
{15, 5},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_SW, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_28[] = {
|
|
|
|
|
{15, 9},
|
|
|
|
|
{14, 8},
|
|
|
|
|
{13, 7},
|
|
|
|
|
{12, 6},
|
|
|
|
|
{11, 5},
|
|
|
|
|
{10, 4},
|
|
|
|
|
{ 9, 3},
|
|
|
|
|
{ 8, 2},
|
|
|
|
|
{ 7, 1},
|
|
|
|
|
{ 6, 0},
|
|
|
|
|
{14, 9},
|
|
|
|
|
{13, 9},
|
|
|
|
|
{12, 9},
|
|
|
|
|
{11, 9},
|
|
|
|
|
{10, 9},
|
|
|
|
|
{ 9, 9},
|
|
|
|
|
{ 8, 8},
|
|
|
|
|
{ 7, 7},
|
|
|
|
|
{ 6, 6},
|
|
|
|
|
{ 5, 5},
|
|
|
|
|
{ 5, 4},
|
|
|
|
|
{ 5, 3},
|
|
|
|
|
{ 5, 2},
|
|
|
|
|
{ 5, 1},
|
|
|
|
|
{ 5, 0},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_NW, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_29[] = {
|
|
|
|
|
{5, 15},
|
|
|
|
|
{4, 14},
|
|
|
|
|
{3, 13},
|
|
|
|
|
{2, 12},
|
|
|
|
|
{1, 11},
|
|
|
|
|
{0, 10},
|
|
|
|
|
{5, 14},
|
|
|
|
|
{5, 13},
|
|
|
|
|
{5, 12},
|
|
|
|
|
{4, 11},
|
|
|
|
|
{3, 10},
|
|
|
|
|
{2, 9},
|
|
|
|
|
{1, 9},
|
|
|
|
|
{0, 9},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_NE, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_data_30[] = {
|
|
|
|
@ -1414,7 +1478,321 @@ static const RoadDriveEntry * const _road_tram_drive_data[] = {
|
|
|
|
|
nullptr,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static const RoadDriveEntry * const * const _road_drive_data[2] = {
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_diagonal_data_2[] = {
|
|
|
|
|
{5, 0},
|
|
|
|
|
{4, 1},
|
|
|
|
|
{3, 2},
|
|
|
|
|
{2, 3},
|
|
|
|
|
{1, 4},
|
|
|
|
|
{0, 5},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_NE, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_diagonal_data_3[] = {
|
|
|
|
|
{15, 6},
|
|
|
|
|
{14, 7},
|
|
|
|
|
{13, 8},
|
|
|
|
|
{12, 9},
|
|
|
|
|
{11, 10},
|
|
|
|
|
{10, 11},
|
|
|
|
|
{ 9, 12},
|
|
|
|
|
{ 8, 13},
|
|
|
|
|
{ 7, 14},
|
|
|
|
|
{ 6, 15},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_SE, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_diagonal_data_4[] = {
|
|
|
|
|
{ 6, 0},
|
|
|
|
|
{ 7, 1},
|
|
|
|
|
{ 8, 2},
|
|
|
|
|
{ 9, 3},
|
|
|
|
|
{10, 4},
|
|
|
|
|
{11, 5},
|
|
|
|
|
{12, 6},
|
|
|
|
|
{13, 7},
|
|
|
|
|
{14, 8},
|
|
|
|
|
{15, 9},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_SW, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_diagonal_data_5[] = {
|
|
|
|
|
{0, 10},
|
|
|
|
|
{1, 11},
|
|
|
|
|
{2, 12},
|
|
|
|
|
{3, 13},
|
|
|
|
|
{4, 14},
|
|
|
|
|
{5, 15},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_SE, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_diagonal_data_10[] = {
|
|
|
|
|
{0, 8},
|
|
|
|
|
{1, 7},
|
|
|
|
|
{2, 6},
|
|
|
|
|
{3, 5},
|
|
|
|
|
{4, 4},
|
|
|
|
|
{5, 3},
|
|
|
|
|
{6, 2},
|
|
|
|
|
{7, 1},
|
|
|
|
|
{8, 0},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_NW, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_diagonal_data_11[] = {
|
|
|
|
|
{ 9, 15},
|
|
|
|
|
{10, 14},
|
|
|
|
|
{11, 13},
|
|
|
|
|
{12, 12},
|
|
|
|
|
{13, 11},
|
|
|
|
|
{14, 10},
|
|
|
|
|
{15, 9},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_SW, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_diagonal_data_12[] = {
|
|
|
|
|
{15, 5},
|
|
|
|
|
{14, 4},
|
|
|
|
|
{13, 3},
|
|
|
|
|
{12, 2},
|
|
|
|
|
{11, 1},
|
|
|
|
|
{10, 0},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_NW, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_diagonal_data_13[] = {
|
|
|
|
|
{9, 15},
|
|
|
|
|
{8, 14},
|
|
|
|
|
{7, 13},
|
|
|
|
|
{6, 12},
|
|
|
|
|
{5, 11},
|
|
|
|
|
{4, 10},
|
|
|
|
|
{3, 9},
|
|
|
|
|
{2, 8},
|
|
|
|
|
{1, 7},
|
|
|
|
|
{0, 6},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_NE, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_diagonal_data_18[] = {
|
|
|
|
|
{8, 0},
|
|
|
|
|
{7, 1},
|
|
|
|
|
{6, 2},
|
|
|
|
|
{5, 3},
|
|
|
|
|
{4, 4},
|
|
|
|
|
{3, 5},
|
|
|
|
|
{2, 6},
|
|
|
|
|
{1, 7},
|
|
|
|
|
{0, 8},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_NE, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_diagonal_data_19[] = {
|
|
|
|
|
{15, 9},
|
|
|
|
|
{14, 10},
|
|
|
|
|
{13, 11},
|
|
|
|
|
{12, 12},
|
|
|
|
|
{11, 13},
|
|
|
|
|
{10, 14},
|
|
|
|
|
{ 9, 15},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_SE, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_diagonal_data_20[] = {
|
|
|
|
|
{10, 0},
|
|
|
|
|
{11, 1},
|
|
|
|
|
{12, 2},
|
|
|
|
|
{13, 3},
|
|
|
|
|
{14, 4},
|
|
|
|
|
{15, 5},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_SW, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_diagonal_data_21[] = {
|
|
|
|
|
{0, 6},
|
|
|
|
|
{1, 7},
|
|
|
|
|
{2, 8},
|
|
|
|
|
{3, 9},
|
|
|
|
|
{4, 10},
|
|
|
|
|
{5, 11},
|
|
|
|
|
{6, 12},
|
|
|
|
|
{7, 13},
|
|
|
|
|
{8, 14},
|
|
|
|
|
{9, 15},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_SE, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_diagonal_data_26[] = {
|
|
|
|
|
{0, 5},
|
|
|
|
|
{1, 4},
|
|
|
|
|
{2, 3},
|
|
|
|
|
{3, 2},
|
|
|
|
|
{4, 1},
|
|
|
|
|
{5, 0},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_NW, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_diagonal_data_27[] = {
|
|
|
|
|
{ 6, 15},
|
|
|
|
|
{ 7, 14},
|
|
|
|
|
{ 8, 13},
|
|
|
|
|
{ 9, 12},
|
|
|
|
|
{10, 11},
|
|
|
|
|
{11, 10},
|
|
|
|
|
{12, 9},
|
|
|
|
|
{13, 8},
|
|
|
|
|
{14, 7},
|
|
|
|
|
{15, 6},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_SW, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_diagonal_data_28[] = {
|
|
|
|
|
{15, 9},
|
|
|
|
|
{14, 8},
|
|
|
|
|
{13, 7},
|
|
|
|
|
{12, 6},
|
|
|
|
|
{11, 5},
|
|
|
|
|
{10, 4},
|
|
|
|
|
{ 9, 3},
|
|
|
|
|
{ 8, 2},
|
|
|
|
|
{ 7, 1},
|
|
|
|
|
{ 6, 0},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_NW, 0}
|
|
|
|
|
};
|
|
|
|
|
static const RoadDriveEntry _roadveh_drive_diagonal_data_29[] = {
|
|
|
|
|
{5, 15},
|
|
|
|
|
{4, 14},
|
|
|
|
|
{3, 13},
|
|
|
|
|
{2, 12},
|
|
|
|
|
{1, 11},
|
|
|
|
|
{0, 10},
|
|
|
|
|
{RDE_NEXT_TILE | DIAGDIR_NE, 0}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static const RoadDriveEntry * const _road_road_drive_diagonal_data[] = {
|
|
|
|
|
_roadveh_drive_data_0,
|
|
|
|
|
_roadveh_drive_data_1,
|
|
|
|
|
_roadveh_drive_diagonal_data_2,
|
|
|
|
|
_roadveh_drive_diagonal_data_3,
|
|
|
|
|
_roadveh_drive_diagonal_data_4,
|
|
|
|
|
_roadveh_drive_diagonal_data_5,
|
|
|
|
|
_roadveh_drive_data_6,
|
|
|
|
|
_roadveh_drive_data_7,
|
|
|
|
|
_roadveh_drive_data_8,
|
|
|
|
|
_roadveh_drive_data_9,
|
|
|
|
|
_roadveh_drive_diagonal_data_10,
|
|
|
|
|
_roadveh_drive_diagonal_data_11,
|
|
|
|
|
_roadveh_drive_diagonal_data_12,
|
|
|
|
|
_roadveh_drive_diagonal_data_13,
|
|
|
|
|
_roadveh_drive_data_14,
|
|
|
|
|
_roadveh_drive_data_15,
|
|
|
|
|
_roadveh_drive_data_16,
|
|
|
|
|
_roadveh_drive_data_17,
|
|
|
|
|
_roadveh_drive_diagonal_data_18,
|
|
|
|
|
_roadveh_drive_diagonal_data_19,
|
|
|
|
|
_roadveh_drive_diagonal_data_20,
|
|
|
|
|
_roadveh_drive_diagonal_data_21,
|
|
|
|
|
_roadveh_drive_data_22,
|
|
|
|
|
_roadveh_drive_data_23,
|
|
|
|
|
_roadveh_drive_data_24,
|
|
|
|
|
_roadveh_drive_data_25,
|
|
|
|
|
_roadveh_drive_diagonal_data_26,
|
|
|
|
|
_roadveh_drive_diagonal_data_27,
|
|
|
|
|
_roadveh_drive_diagonal_data_28,
|
|
|
|
|
_roadveh_drive_diagonal_data_29,
|
|
|
|
|
_roadveh_drive_data_30,
|
|
|
|
|
_roadveh_drive_data_31,
|
|
|
|
|
_rv_station_left_sw_far,
|
|
|
|
|
_rv_station_left_nw_far,
|
|
|
|
|
_rv_station_left_sw_near,
|
|
|
|
|
_rv_station_left_nw_near,
|
|
|
|
|
_rv_station_left_sw_far,
|
|
|
|
|
_rv_station_left_nw_far,
|
|
|
|
|
_rv_station_left_sw_near,
|
|
|
|
|
_rv_station_left_nw_near,
|
|
|
|
|
_rv_station_left_ne_far,
|
|
|
|
|
_rv_station_left_se_far,
|
|
|
|
|
_rv_station_left_ne_near,
|
|
|
|
|
_rv_station_left_se_near,
|
|
|
|
|
_rv_station_left_ne_far,
|
|
|
|
|
_rv_station_left_se_far,
|
|
|
|
|
_rv_station_left_ne_near,
|
|
|
|
|
_rv_station_left_se_near,
|
|
|
|
|
_rv_station_right_sw_far,
|
|
|
|
|
_rv_station_right_nw_far,
|
|
|
|
|
_rv_station_right_sw_near,
|
|
|
|
|
_rv_station_right_nw_near,
|
|
|
|
|
_rv_station_right_sw_far,
|
|
|
|
|
_rv_station_right_nw_far,
|
|
|
|
|
_rv_station_right_sw_near,
|
|
|
|
|
_rv_station_right_nw_near,
|
|
|
|
|
_rv_station_right_ne_far,
|
|
|
|
|
_rv_station_right_se_far,
|
|
|
|
|
_rv_station_right_ne_near,
|
|
|
|
|
_rv_station_right_se_near,
|
|
|
|
|
_rv_station_right_ne_far,
|
|
|
|
|
_rv_station_right_se_far,
|
|
|
|
|
_rv_station_right_ne_near,
|
|
|
|
|
_rv_station_right_se_near,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static const RoadDriveEntry * const _road_tram_drive_diagonal_data[] = {
|
|
|
|
|
_roadveh_drive_data_0,
|
|
|
|
|
_roadveh_drive_data_1,
|
|
|
|
|
_roadveh_drive_diagonal_data_2,
|
|
|
|
|
_roadveh_drive_diagonal_data_3,
|
|
|
|
|
_roadveh_drive_diagonal_data_4,
|
|
|
|
|
_roadveh_drive_diagonal_data_5,
|
|
|
|
|
_roadveh_tram_turn_ne_0,
|
|
|
|
|
_roadveh_tram_turn_se_0,
|
|
|
|
|
_roadveh_drive_data_8,
|
|
|
|
|
_roadveh_drive_data_9,
|
|
|
|
|
_roadveh_drive_diagonal_data_10,
|
|
|
|
|
_roadveh_drive_diagonal_data_11,
|
|
|
|
|
_roadveh_drive_diagonal_data_12,
|
|
|
|
|
_roadveh_drive_diagonal_data_13,
|
|
|
|
|
_roadveh_tram_turn_sw_0,
|
|
|
|
|
_roadveh_tram_turn_nw_0,
|
|
|
|
|
_roadveh_drive_data_16,
|
|
|
|
|
_roadveh_drive_data_17,
|
|
|
|
|
_roadveh_drive_diagonal_data_18,
|
|
|
|
|
_roadveh_drive_diagonal_data_19,
|
|
|
|
|
_roadveh_drive_diagonal_data_20,
|
|
|
|
|
_roadveh_drive_diagonal_data_21,
|
|
|
|
|
_roadveh_tram_turn_ne_1,
|
|
|
|
|
_roadveh_tram_turn_se_1,
|
|
|
|
|
_roadveh_drive_data_24,
|
|
|
|
|
_roadveh_drive_data_25,
|
|
|
|
|
_roadveh_drive_diagonal_data_26,
|
|
|
|
|
_roadveh_drive_diagonal_data_27,
|
|
|
|
|
_roadveh_drive_diagonal_data_28,
|
|
|
|
|
_roadveh_drive_diagonal_data_29,
|
|
|
|
|
_roadveh_tram_turn_sw_1,
|
|
|
|
|
_roadveh_tram_turn_nw_1,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
nullptr,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
static const RoadDriveEntry * const * const _road_drive_data[4] = {
|
|
|
|
|
_road_road_drive_data,
|
|
|
|
|
_road_tram_drive_data,
|
|
|
|
|
_road_road_drive_diagonal_data,
|
|
|
|
|
_road_tram_drive_diagonal_data,
|
|
|
|
|
};
|
|
|
|
|