belugas@8506: /* $Id$ */ belugas@8506: belugas@8506: /** @file table/roadveh_movement.h Data about how a road vehicle must drive on a tile */ belugas@8506: belugas@8506: static const RoadDriveEntry _roadveh_drive_data_0[] = { belugas@8506: {15, 5}, belugas@8506: {14, 5}, belugas@8506: {13, 5}, belugas@8506: {12, 5}, belugas@8506: {11, 5}, belugas@8506: {10, 5}, belugas@8506: { 9, 5}, belugas@8506: { 8, 5}, belugas@8506: { 7, 5}, belugas@8506: { 6, 5}, belugas@8506: { 5, 5}, belugas@8506: { 4, 5}, belugas@8506: { 3, 5}, belugas@8506: { 2, 5}, belugas@8506: { 1, 5}, belugas@8506: { 0, 5}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_1[] = { belugas@8506: {5, 0}, belugas@8506: {5, 1}, belugas@8506: {5, 2}, belugas@8506: {5, 3}, belugas@8506: {5, 4}, belugas@8506: {5, 5}, belugas@8506: {5, 6}, belugas@8506: {5, 7}, belugas@8506: {5, 8}, belugas@8506: {5, 9}, belugas@8506: {5, 10}, belugas@8506: {5, 11}, belugas@8506: {5, 12}, belugas@8506: {5, 13}, belugas@8506: {5, 14}, belugas@8506: {5, 15}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_2[] = { belugas@8506: {5, 0}, belugas@8506: {5, 1}, belugas@8506: {5, 2}, belugas@8506: {4, 3}, belugas@8506: {3, 4}, belugas@8506: {2, 5}, belugas@8506: {1, 5}, belugas@8506: {0, 5}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_3[] = { belugas@8506: {15, 5}, belugas@8506: {14, 5}, belugas@8506: {13, 5}, belugas@8506: {12, 5}, belugas@8506: {11, 5}, belugas@8506: {10, 5}, belugas@8506: { 9, 6}, belugas@8506: { 8, 7}, belugas@8506: { 7, 8}, belugas@8506: { 6, 9}, belugas@8506: { 5, 10}, belugas@8506: { 5, 11}, belugas@8506: { 5, 12}, belugas@8506: { 5, 13}, belugas@8506: { 5, 14}, belugas@8506: { 5, 15}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_4[] = { belugas@8506: { 5, 0}, belugas@8506: { 5, 1}, belugas@8506: { 5, 2}, belugas@8506: { 5, 3}, belugas@8506: { 5, 4}, belugas@8506: { 5, 5}, belugas@8506: { 6, 6}, belugas@8506: { 7, 7}, belugas@8506: { 8, 8}, belugas@8506: { 9, 9}, belugas@8506: {10, 9}, belugas@8506: {11, 9}, belugas@8506: {12, 9}, belugas@8506: {13, 9}, belugas@8506: {14, 9}, belugas@8506: {15, 9}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_5[] = { belugas@8506: {0, 9}, belugas@8506: {1, 9}, belugas@8506: {2, 9}, belugas@8506: {3, 10}, belugas@8506: {4, 11}, belugas@8506: {5, 12}, belugas@8506: {5, 13}, belugas@8506: {5, 14}, belugas@8506: {5, 15}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_6[] = { belugas@8506: {0, 6}, belugas@8506: {0, 7}, belugas@8506: {0, 8}, belugas@8506: {0, 9}, belugas@8506: {RDE_TURNED | DIAGDIR_SW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_7[] = { belugas@8506: {6, 15}, belugas@8506: {7, 15}, belugas@8506: {8, 15}, belugas@8506: {9, 15}, belugas@8506: {RDE_TURNED | DIAGDIR_NW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_8[] = { belugas@8506: { 0, 9}, belugas@8506: { 1, 9}, belugas@8506: { 2, 9}, belugas@8506: { 3, 9}, belugas@8506: { 4, 9}, belugas@8506: { 5, 9}, belugas@8506: { 6, 9}, belugas@8506: { 7, 9}, belugas@8506: { 8, 9}, belugas@8506: { 9, 9}, belugas@8506: {10, 9}, belugas@8506: {11, 9}, belugas@8506: {12, 9}, belugas@8506: {13, 9}, belugas@8506: {14, 9}, belugas@8506: {15, 9}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_9[] = { belugas@8506: {9, 15}, belugas@8506: {9, 14}, belugas@8506: {9, 13}, belugas@8506: {9, 12}, belugas@8506: {9, 11}, belugas@8506: {9, 10}, belugas@8506: {9, 9}, belugas@8506: {9, 8}, belugas@8506: {9, 7}, belugas@8506: {9, 6}, belugas@8506: {9, 5}, belugas@8506: {9, 4}, belugas@8506: {9, 3}, belugas@8506: {9, 2}, belugas@8506: {9, 1}, belugas@8506: {9, 0}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_10[] = { belugas@8506: {0, 9}, belugas@8506: {1, 9}, belugas@8506: {2, 9}, belugas@8506: {3, 9}, belugas@8506: {4, 9}, belugas@8506: {5, 9}, belugas@8506: {6, 8}, belugas@8506: {7, 7}, belugas@8506: {8, 6}, belugas@8506: {9, 5}, belugas@8506: {9, 4}, belugas@8506: {9, 3}, belugas@8506: {9, 2}, belugas@8506: {9, 1}, belugas@8506: {9, 0}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_11[] = { belugas@8506: { 9, 15}, belugas@8506: { 9, 14}, belugas@8506: { 9, 13}, belugas@8506: {10, 12}, belugas@8506: {11, 11}, belugas@8506: {12, 10}, belugas@8506: {13, 9}, belugas@8506: {14, 9}, belugas@8506: {15, 9}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_12[] = { belugas@8506: {15, 5}, belugas@8506: {14, 5}, belugas@8506: {13, 5}, belugas@8506: {12, 4}, belugas@8506: {11, 3}, belugas@8506: {10, 2}, belugas@8506: { 9, 1}, belugas@8506: { 9, 0}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_13[] = { belugas@8506: {9, 15}, belugas@8506: {9, 14}, belugas@8506: {9, 13}, belugas@8506: {9, 12}, belugas@8506: {9, 11}, belugas@8506: {9, 10}, belugas@8506: {8, 9}, belugas@8506: {7, 8}, belugas@8506: {6, 7}, belugas@8506: {5, 6}, belugas@8506: {4, 5}, belugas@8506: {3, 5}, belugas@8506: {2, 5}, belugas@8506: {1, 5}, belugas@8506: {0, 5}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_14[] = { belugas@8506: {15, 8}, belugas@8506: {15, 7}, belugas@8506: {15, 6}, belugas@8506: {15, 5}, belugas@8506: {RDE_TURNED | DIAGDIR_NE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_15[] = { belugas@8506: {8, 0}, belugas@8506: {7, 0}, belugas@8506: {6, 0}, belugas@8506: {5, 0}, belugas@8506: {RDE_TURNED | DIAGDIR_SE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_16[] = { belugas@8506: {15, 9}, belugas@8506: {14, 9}, belugas@8506: {13, 9}, belugas@8506: {12, 9}, belugas@8506: {11, 9}, belugas@8506: {10, 9}, belugas@8506: { 9, 9}, belugas@8506: { 8, 9}, belugas@8506: { 7, 9}, belugas@8506: { 6, 9}, belugas@8506: { 5, 9}, belugas@8506: { 4, 9}, belugas@8506: { 3, 9}, belugas@8506: { 2, 9}, belugas@8506: { 1, 9}, belugas@8506: { 0, 9}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_17[] = { belugas@8506: {9, 0}, belugas@8506: {9, 1}, belugas@8506: {9, 2}, belugas@8506: {9, 3}, belugas@8506: {9, 4}, belugas@8506: {9, 5}, belugas@8506: {9, 6}, belugas@8506: {9, 7}, belugas@8506: {9, 8}, belugas@8506: {9, 9}, belugas@8506: {9, 10}, belugas@8506: {9, 11}, belugas@8506: {9, 12}, belugas@8506: {9, 13}, belugas@8506: {9, 14}, belugas@8506: {9, 15}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_18[] = { belugas@8506: {9, 0}, belugas@8506: {9, 1}, belugas@8506: {9, 2}, belugas@8506: {9, 3}, belugas@8506: {9, 4}, belugas@8506: {9, 5}, belugas@8506: {8, 6}, belugas@8506: {7, 7}, belugas@8506: {6, 8}, belugas@8506: {5, 9}, belugas@8506: {4, 9}, belugas@8506: {3, 9}, belugas@8506: {2, 9}, belugas@8506: {1, 9}, belugas@8506: {0, 9}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_19[] = { belugas@8506: {15, 9}, belugas@8506: {14, 9}, belugas@8506: {13, 9}, belugas@8506: {12, 10}, belugas@8506: {11, 11}, belugas@8506: {10, 12}, belugas@8506: { 9, 13}, belugas@8506: { 9, 14}, belugas@8506: { 9, 15}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_20[] = { belugas@8506: { 9, 0}, belugas@8506: { 9, 1}, belugas@8506: {10, 2}, belugas@8506: {11, 3}, belugas@8506: {12, 4}, belugas@8506: {13, 5}, belugas@8506: {14, 5}, belugas@8506: {15, 5}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_21[] = { belugas@8506: {0, 5}, belugas@8506: {1, 5}, belugas@8506: {2, 5}, belugas@8506: {3, 5}, belugas@8506: {4, 5}, belugas@8506: {5, 6}, belugas@8506: {6, 7}, belugas@8506: {7, 8}, belugas@8506: {8, 9}, belugas@8506: {9, 10}, belugas@8506: {9, 11}, belugas@8506: {9, 12}, belugas@8506: {9, 13}, belugas@8506: {9, 14}, belugas@8506: {9, 15}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_22[] = { belugas@8506: {0, 8}, belugas@8506: {0, 7}, belugas@8506: {0, 6}, belugas@8506: {0, 5}, belugas@8506: {RDE_TURNED | DIAGDIR_SW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_23[] = { belugas@8506: {8, 15}, belugas@8506: {7, 15}, belugas@8506: {6, 15}, belugas@8506: {5, 15}, belugas@8506: {RDE_TURNED | DIAGDIR_NW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_24[] = { belugas@8506: { 0, 5}, belugas@8506: { 1, 5}, belugas@8506: { 2, 5}, belugas@8506: { 3, 5}, belugas@8506: { 4, 5}, belugas@8506: { 5, 5}, belugas@8506: { 6, 5}, belugas@8506: { 7, 5}, belugas@8506: { 8, 5}, belugas@8506: { 9, 5}, belugas@8506: {10, 5}, belugas@8506: {11, 5}, belugas@8506: {12, 5}, belugas@8506: {13, 5}, belugas@8506: {14, 5}, belugas@8506: {15, 5}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_25[] = { belugas@8506: {5, 15}, belugas@8506: {5, 14}, belugas@8506: {5, 13}, belugas@8506: {5, 12}, belugas@8506: {5, 11}, belugas@8506: {5, 10}, belugas@8506: {5, 9}, belugas@8506: {5, 8}, belugas@8506: {5, 7}, belugas@8506: {5, 6}, belugas@8506: {5, 5}, belugas@8506: {5, 4}, belugas@8506: {5, 3}, belugas@8506: {5, 2}, belugas@8506: {5, 1}, belugas@8506: {5, 0}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_26[] = { belugas@8506: {0, 5}, belugas@8506: {1, 5}, belugas@8506: {2, 5}, belugas@8506: {3, 4}, belugas@8506: {4, 3}, belugas@8506: {5, 2}, belugas@8506: {5, 1}, belugas@8506: {5, 0}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_27[] = { belugas@8506: { 5, 15}, belugas@8506: { 5, 14}, belugas@8506: { 5, 13}, belugas@8506: { 5, 12}, belugas@8506: { 5, 11}, belugas@8506: { 5, 10}, belugas@8506: { 6, 9}, belugas@8506: { 7, 8}, belugas@8506: { 8, 7}, belugas@8506: { 9, 6}, belugas@8506: {10, 5}, belugas@8506: {11, 5}, belugas@8506: {12, 5}, belugas@8506: {13, 5}, belugas@8506: {14, 5}, belugas@8506: {15, 5}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_28[] = { belugas@8506: {15, 9}, belugas@8506: {14, 9}, belugas@8506: {13, 9}, belugas@8506: {12, 9}, belugas@8506: {11, 9}, belugas@8506: {10, 9}, belugas@8506: { 9, 9}, belugas@8506: { 8, 8}, belugas@8506: { 7, 7}, belugas@8506: { 6, 6}, belugas@8506: { 5, 5}, belugas@8506: { 5, 4}, belugas@8506: { 5, 3}, belugas@8506: { 5, 2}, belugas@8506: { 5, 1}, belugas@8506: { 5, 0}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_29[] = { belugas@8506: {5, 15}, belugas@8506: {5, 14}, belugas@8506: {5, 13}, belugas@8506: {5, 12}, belugas@8506: {4, 11}, belugas@8506: {3, 10}, belugas@8506: {2, 9}, belugas@8506: {1, 9}, belugas@8506: {0, 9}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_30[] = { belugas@8506: {15, 6}, belugas@8506: {15, 7}, belugas@8506: {15, 8}, belugas@8506: {15, 9}, belugas@8506: {RDE_TURNED | DIAGDIR_NE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_31[] = { belugas@8506: {6, 0}, belugas@8506: {7, 0}, belugas@8506: {8, 0}, belugas@8506: {9, 0}, belugas@8506: {RDE_TURNED | DIAGDIR_SE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_32[] = { belugas@8506: {15, 5}, belugas@8506: {14, 5}, belugas@8506: {13, 6}, belugas@8506: {13, 7}, belugas@8506: {13, 8}, belugas@8506: {13, 9}, belugas@8506: {13, 10}, belugas@8506: {13, 11}, belugas@8506: {12, 12}, belugas@8506: {11, 12}, belugas@8506: {10, 12}, belugas@8506: { 9, 12}, belugas@8506: { 8, 12}, belugas@8506: { 7, 12}, belugas@8506: { 6, 12}, belugas@8506: { 5, 11}, belugas@8506: { 5, 10}, belugas@8506: { 5, 9}, belugas@8506: { 5, 8}, belugas@8506: { 5, 7}, belugas@8506: { 5, 6}, belugas@8506: { 5, 7}, belugas@8506: { 5, 8}, belugas@8506: { 5, 9}, belugas@8506: { 5, 10}, belugas@8506: { 5, 11}, belugas@8506: { 6, 12}, belugas@8506: { 7, 12}, belugas@8506: { 8, 12}, belugas@8506: { 9, 12}, belugas@8506: {10, 12}, belugas@8506: {11, 12}, belugas@8506: {12, 12}, belugas@8506: {13, 11}, belugas@8506: {13, 10}, belugas@8506: {14, 9}, belugas@8506: {15, 9}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_33[] = { belugas@8506: { 5, 0}, belugas@8506: { 5, 1}, belugas@8506: { 6, 2}, belugas@8506: { 7, 2}, belugas@8506: { 8, 2}, belugas@8506: { 9, 2}, belugas@8506: {10, 2}, belugas@8506: {11, 2}, belugas@8506: {12, 3}, belugas@8506: {12, 4}, belugas@8506: {12, 5}, belugas@8506: {12, 6}, belugas@8506: {12, 7}, belugas@8506: {12, 8}, belugas@8506: {12, 9}, belugas@8506: {11, 10}, belugas@8506: {10, 10}, belugas@8506: { 9, 10}, belugas@8506: { 8, 10}, belugas@8506: { 7, 10}, belugas@8506: { 6, 10}, belugas@8506: { 7, 10}, belugas@8506: { 8, 10}, belugas@8506: { 9, 10}, belugas@8506: {10, 10}, belugas@8506: {11, 10}, belugas@8506: {12, 9}, belugas@8506: {12, 8}, belugas@8506: {12, 7}, belugas@8506: {12, 6}, belugas@8506: {12, 5}, belugas@8506: {12, 4}, belugas@8506: {12, 3}, belugas@8506: {11, 2}, belugas@8506: {10, 2}, belugas@8506: { 9, 1}, belugas@8506: { 9, 0}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_34[] = { belugas@8506: {15, 5}, belugas@8506: {14, 5}, belugas@8506: {13, 6}, belugas@8506: {13, 7}, belugas@8506: {13, 8}, belugas@8506: {13, 9}, belugas@8506: {13, 10}, belugas@8506: {13, 11}, belugas@8506: {12, 12}, belugas@8506: {11, 12}, belugas@8506: {10, 12}, belugas@8506: { 9, 11}, belugas@8506: { 9, 10}, belugas@8506: { 9, 9}, belugas@8506: { 9, 8}, belugas@8506: { 9, 7}, belugas@8506: { 9, 6}, belugas@8506: { 9, 7}, belugas@8506: { 9, 8}, belugas@8506: { 9, 9}, belugas@8506: { 9, 10}, belugas@8506: { 9, 11}, belugas@8506: {10, 12}, belugas@8506: {11, 12}, belugas@8506: {12, 12}, belugas@8506: {13, 11}, belugas@8506: {13, 10}, belugas@8506: {14, 9}, belugas@8506: {15, 9}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_35[] = { belugas@8506: { 5, 0}, belugas@8506: { 5, 1}, belugas@8506: { 6, 2}, belugas@8506: { 7, 2}, belugas@8506: { 8, 2}, belugas@8506: { 9, 2}, belugas@8506: {10, 2}, belugas@8506: {11, 2}, belugas@8506: {12, 3}, belugas@8506: {12, 4}, belugas@8506: {12, 5}, belugas@8506: {11, 6}, belugas@8506: {10, 6}, belugas@8506: { 9, 6}, belugas@8506: { 8, 6}, belugas@8506: { 7, 6}, belugas@8506: { 6, 6}, belugas@8506: { 7, 6}, belugas@8506: { 8, 6}, belugas@8506: { 9, 6}, belugas@8506: {10, 6}, belugas@8506: {11, 6}, belugas@8506: {12, 5}, belugas@8506: {12, 4}, belugas@8506: {12, 3}, belugas@8506: {11, 2}, belugas@8506: {10, 2}, belugas@8506: { 9, 1}, belugas@8506: { 9, 0}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_40[] = { belugas@8506: { 0, 9}, belugas@8506: { 1, 9}, belugas@8506: { 2, 8}, belugas@8506: { 2, 7}, belugas@8506: { 2, 6}, belugas@8506: { 2, 5}, belugas@8506: { 2, 4}, belugas@8506: { 3, 3}, belugas@8506: { 4, 3}, belugas@8506: { 5, 3}, belugas@8506: { 6, 3}, belugas@8506: { 7, 3}, belugas@8506: { 8, 3}, belugas@8506: { 9, 3}, belugas@8506: {10, 4}, belugas@8506: {10, 5}, belugas@8506: {10, 6}, belugas@8506: {10, 7}, belugas@8506: {10, 8}, belugas@8506: {10, 9}, belugas@8506: {10, 8}, belugas@8506: {10, 7}, belugas@8506: {10, 6}, belugas@8506: {10, 5}, belugas@8506: {10, 4}, belugas@8506: { 9, 3}, belugas@8506: { 8, 3}, belugas@8506: { 7, 3}, belugas@8506: { 6, 3}, belugas@8506: { 5, 3}, belugas@8506: { 4, 3}, belugas@8506: { 3, 3}, belugas@8506: { 2, 4}, belugas@8506: { 1, 5}, belugas@8506: { 0, 5}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_41[] = { belugas@8506: {9, 15}, belugas@8506: {9, 14}, belugas@8506: {8, 13}, belugas@8506: {7, 13}, belugas@8506: {6, 13}, belugas@8506: {5, 13}, belugas@8506: {4, 13}, belugas@8506: {3, 12}, belugas@8506: {3, 11}, belugas@8506: {3, 10}, belugas@8506: {3, 9}, belugas@8506: {3, 8}, belugas@8506: {3, 7}, belugas@8506: {3, 6}, belugas@8506: {4, 5}, belugas@8506: {5, 5}, belugas@8506: {6, 5}, belugas@8506: {7, 5}, belugas@8506: {8, 5}, belugas@8506: {9, 5}, belugas@8506: {8, 5}, belugas@8506: {7, 5}, belugas@8506: {6, 5}, belugas@8506: {5, 5}, belugas@8506: {4, 5}, belugas@8506: {3, 6}, belugas@8506: {3, 7}, belugas@8506: {3, 8}, belugas@8506: {3, 9}, belugas@8506: {3, 10}, belugas@8506: {3, 11}, belugas@8506: {3, 12}, belugas@8506: {4, 13}, belugas@8506: {5, 14}, belugas@8506: {5, 15}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_42[] = { belugas@8506: {0, 9}, belugas@8506: {1, 9}, belugas@8506: {2, 8}, belugas@8506: {2, 7}, belugas@8506: {2, 6}, belugas@8506: {2, 5}, belugas@8506: {2, 4}, belugas@8506: {3, 3}, belugas@8506: {4, 3}, belugas@8506: {5, 3}, belugas@8506: {6, 4}, belugas@8506: {6, 5}, belugas@8506: {6, 6}, belugas@8506: {6, 7}, belugas@8506: {6, 8}, belugas@8506: {6, 9}, belugas@8506: {6, 8}, belugas@8506: {6, 7}, belugas@8506: {6, 6}, belugas@8506: {6, 5}, belugas@8506: {6, 4}, belugas@8506: {5, 3}, belugas@8506: {4, 3}, belugas@8506: {3, 3}, belugas@8506: {2, 4}, belugas@8506: {1, 5}, belugas@8506: {0, 5}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_43[] = { belugas@8506: {9, 15}, belugas@8506: {9, 14}, belugas@8506: {8, 13}, belugas@8506: {7, 13}, belugas@8506: {6, 13}, belugas@8506: {5, 13}, belugas@8506: {4, 13}, belugas@8506: {3, 12}, belugas@8506: {3, 11}, belugas@8506: {3, 10}, belugas@8506: {4, 9}, belugas@8506: {5, 9}, belugas@8506: {6, 9}, belugas@8506: {7, 9}, belugas@8506: {8, 9}, belugas@8506: {9, 9}, belugas@8506: {8, 9}, belugas@8506: {7, 9}, belugas@8506: {6, 9}, belugas@8506: {5, 9}, belugas@8506: {4, 9}, belugas@8506: {3, 10}, belugas@8506: {3, 11}, belugas@8506: {3, 12}, belugas@8506: {4, 13}, belugas@8506: {5, 14}, belugas@8506: {5, 15}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_48[] = { belugas@8506: {15, 9}, belugas@8506: {14, 9}, belugas@8506: {13, 10}, belugas@8506: {13, 11}, belugas@8506: {12, 12}, belugas@8506: {11, 12}, belugas@8506: {10, 12}, belugas@8506: { 9, 12}, belugas@8506: { 8, 12}, belugas@8506: { 7, 12}, belugas@8506: { 6, 12}, belugas@8506: { 5, 11}, belugas@8506: { 5, 10}, belugas@8506: { 5, 9}, belugas@8506: { 5, 8}, belugas@8506: { 5, 7}, belugas@8506: { 5, 6}, belugas@8506: { 5, 7}, belugas@8506: { 5, 8}, belugas@8506: { 5, 9}, belugas@8506: { 5, 10}, belugas@8506: { 5, 11}, belugas@8506: { 6, 12}, belugas@8506: { 7, 12}, belugas@8506: { 8, 12}, belugas@8506: { 9, 12}, belugas@8506: {10, 12}, belugas@8506: {11, 12}, belugas@8506: {12, 12}, belugas@8506: {13, 11}, belugas@8506: {13, 10}, belugas@8506: {13, 9}, belugas@8506: {13, 8}, belugas@8506: {13, 7}, belugas@8506: {13, 6}, belugas@8506: {14, 5}, belugas@8506: {15, 5}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_49[] = { belugas@8506: { 9, 0}, belugas@8506: { 9, 1}, belugas@8506: {10, 2}, belugas@8506: {11, 2}, belugas@8506: {12, 3}, belugas@8506: {12, 4}, belugas@8506: {12, 5}, belugas@8506: {12, 6}, belugas@8506: {12, 7}, belugas@8506: {12, 8}, belugas@8506: {12, 9}, belugas@8506: {11, 10}, belugas@8506: {10, 10}, belugas@8506: { 9, 10}, belugas@8506: { 8, 10}, belugas@8506: { 7, 10}, belugas@8506: { 6, 10}, belugas@8506: { 7, 10}, belugas@8506: { 8, 10}, belugas@8506: { 9, 10}, belugas@8506: {10, 10}, belugas@8506: {11, 10}, belugas@8506: {12, 9}, belugas@8506: {12, 8}, belugas@8506: {12, 7}, belugas@8506: {12, 6}, belugas@8506: {12, 5}, belugas@8506: {12, 4}, belugas@8506: {12, 3}, belugas@8506: {11, 2}, belugas@8506: {10, 2}, belugas@8506: { 9, 2}, belugas@8506: { 8, 2}, belugas@8506: { 7, 2}, belugas@8506: { 6, 2}, belugas@8506: { 5, 1}, belugas@8506: { 5, 0}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_50[] = { belugas@8506: {15, 9}, belugas@8506: {14, 9}, belugas@8506: {13, 10}, belugas@8506: {13, 11}, belugas@8506: {12, 12}, belugas@8506: {11, 12}, belugas@8506: {10, 12}, belugas@8506: { 9, 11}, belugas@8506: { 9, 10}, belugas@8506: { 9, 9}, belugas@8506: { 9, 8}, belugas@8506: { 9, 7}, belugas@8506: { 9, 6}, belugas@8506: { 9, 7}, belugas@8506: { 9, 8}, belugas@8506: { 9, 9}, belugas@8506: { 9, 10}, belugas@8506: { 9, 11}, belugas@8506: {10, 12}, belugas@8506: {11, 12}, belugas@8506: {12, 12}, belugas@8506: {13, 11}, belugas@8506: {13, 10}, belugas@8506: {13, 9}, belugas@8506: {13, 8}, belugas@8506: {13, 7}, belugas@8506: {13, 6}, belugas@8506: {14, 5}, belugas@8506: {15, 5}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_51[] = { belugas@8506: { 9, 0}, belugas@8506: { 9, 1}, belugas@8506: {10, 2}, belugas@8506: {11, 2}, belugas@8506: {12, 3}, belugas@8506: {12, 4}, belugas@8506: {12, 5}, belugas@8506: {11, 6}, belugas@8506: {10, 6}, belugas@8506: { 9, 6}, belugas@8506: { 8, 6}, belugas@8506: { 7, 6}, belugas@8506: { 6, 6}, belugas@8506: { 7, 6}, belugas@8506: { 8, 6}, belugas@8506: { 9, 6}, belugas@8506: {10, 6}, belugas@8506: {11, 6}, belugas@8506: {12, 5}, belugas@8506: {12, 4}, belugas@8506: {12, 3}, belugas@8506: {11, 2}, belugas@8506: {10, 2}, belugas@8506: { 9, 2}, belugas@8506: { 8, 2}, belugas@8506: { 7, 2}, belugas@8506: { 6, 2}, belugas@8506: { 5, 1}, belugas@8506: { 5, 0}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NW, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_56[] = { belugas@8506: { 0, 5}, belugas@8506: { 1, 5}, belugas@8506: { 2, 4}, belugas@8506: { 3, 3}, belugas@8506: { 4, 3}, belugas@8506: { 5, 3}, belugas@8506: { 6, 3}, belugas@8506: { 7, 3}, belugas@8506: { 8, 3}, belugas@8506: { 9, 3}, belugas@8506: {10, 4}, belugas@8506: {10, 5}, belugas@8506: {10, 6}, belugas@8506: {10, 7}, belugas@8506: {10, 8}, belugas@8506: {10, 9}, belugas@8506: {10, 8}, belugas@8506: {10, 7}, belugas@8506: {10, 6}, belugas@8506: {10, 5}, belugas@8506: {10, 4}, belugas@8506: { 9, 3}, belugas@8506: { 8, 3}, belugas@8506: { 7, 3}, belugas@8506: { 6, 3}, belugas@8506: { 5, 3}, belugas@8506: { 4, 3}, belugas@8506: { 3, 3}, belugas@8506: { 2, 4}, belugas@8506: { 2, 5}, belugas@8506: { 2, 6}, belugas@8506: { 2, 7}, belugas@8506: { 2, 8}, belugas@8506: { 1, 9}, belugas@8506: { 0, 9}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_57[] = { belugas@8506: {5, 15}, belugas@8506: {5, 14}, belugas@8506: {4, 13}, belugas@8506: {3, 12}, belugas@8506: {3, 11}, belugas@8506: {3, 10}, belugas@8506: {3, 9}, belugas@8506: {3, 8}, belugas@8506: {3, 7}, belugas@8506: {3, 6}, belugas@8506: {4, 5}, belugas@8506: {5, 5}, belugas@8506: {6, 5}, belugas@8506: {7, 5}, belugas@8506: {8, 5}, belugas@8506: {9, 5}, belugas@8506: {8, 5}, belugas@8506: {7, 5}, belugas@8506: {6, 5}, belugas@8506: {5, 5}, belugas@8506: {4, 5}, belugas@8506: {3, 6}, belugas@8506: {3, 7}, belugas@8506: {3, 8}, belugas@8506: {3, 9}, belugas@8506: {3, 10}, belugas@8506: {3, 11}, belugas@8506: {3, 12}, belugas@8506: {4, 13}, belugas@8506: {5, 13}, belugas@8506: {6, 13}, belugas@8506: {7, 13}, belugas@8506: {8, 13}, belugas@8506: {9, 14}, belugas@8506: {9, 15}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_58[] = { belugas@8506: {0, 5}, belugas@8506: {1, 5}, belugas@8506: {2, 4}, belugas@8506: {3, 3}, belugas@8506: {4, 3}, belugas@8506: {5, 3}, belugas@8506: {6, 4}, belugas@8506: {6, 5}, belugas@8506: {6, 6}, belugas@8506: {6, 7}, belugas@8506: {6, 8}, belugas@8506: {6, 9}, belugas@8506: {6, 8}, belugas@8506: {6, 7}, belugas@8506: {6, 6}, belugas@8506: {6, 5}, belugas@8506: {6, 4}, belugas@8506: {5, 3}, belugas@8506: {4, 3}, belugas@8506: {3, 3}, belugas@8506: {2, 4}, belugas@8506: {2, 5}, belugas@8506: {2, 6}, belugas@8506: {2, 7}, belugas@8506: {2, 8}, belugas@8506: {1, 9}, belugas@8506: {0, 9}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_drive_data_59[] = { belugas@8506: {5, 15}, belugas@8506: {5, 14}, belugas@8506: {4, 13}, belugas@8506: {3, 12}, belugas@8506: {3, 11}, belugas@8506: {3, 10}, belugas@8506: {4, 9}, belugas@8506: {5, 9}, belugas@8506: {6, 9}, belugas@8506: {7, 9}, belugas@8506: {8, 9}, belugas@8506: {9, 9}, belugas@8506: {8, 9}, belugas@8506: {7, 9}, belugas@8506: {6, 9}, belugas@8506: {5, 9}, belugas@8506: {4, 9}, belugas@8506: {3, 10}, belugas@8506: {3, 11}, belugas@8506: {3, 12}, belugas@8506: {4, 13}, belugas@8506: {5, 13}, belugas@8506: {6, 13}, belugas@8506: {7, 13}, belugas@8506: {8, 13}, belugas@8506: {9, 14}, belugas@8506: {9, 15}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SE, 0} belugas@8506: }; belugas@8506: belugas@8506: static const RoadDriveEntry * const _road_road_drive_data[] = { belugas@8506: _roadveh_drive_data_0, belugas@8506: _roadveh_drive_data_1, belugas@8506: _roadveh_drive_data_2, belugas@8506: _roadveh_drive_data_3, belugas@8506: _roadveh_drive_data_4, belugas@8506: _roadveh_drive_data_5, belugas@8506: _roadveh_drive_data_6, belugas@8506: _roadveh_drive_data_7, belugas@8506: _roadveh_drive_data_8, belugas@8506: _roadveh_drive_data_9, belugas@8506: _roadveh_drive_data_10, belugas@8506: _roadveh_drive_data_11, belugas@8506: _roadveh_drive_data_12, belugas@8506: _roadveh_drive_data_13, belugas@8506: _roadveh_drive_data_14, belugas@8506: _roadveh_drive_data_15, belugas@8506: _roadveh_drive_data_16, belugas@8506: _roadveh_drive_data_17, belugas@8506: _roadveh_drive_data_18, belugas@8506: _roadveh_drive_data_19, belugas@8506: _roadveh_drive_data_20, belugas@8506: _roadveh_drive_data_21, belugas@8506: _roadveh_drive_data_22, belugas@8506: _roadveh_drive_data_23, belugas@8506: _roadveh_drive_data_24, belugas@8506: _roadveh_drive_data_25, belugas@8506: _roadveh_drive_data_26, belugas@8506: _roadveh_drive_data_27, belugas@8506: _roadveh_drive_data_28, belugas@8506: _roadveh_drive_data_29, belugas@8506: _roadveh_drive_data_30, belugas@8506: _roadveh_drive_data_31, belugas@8506: _roadveh_drive_data_32, belugas@8506: _roadveh_drive_data_33, belugas@8506: _roadveh_drive_data_34, belugas@8506: _roadveh_drive_data_35, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: _roadveh_drive_data_40, belugas@8506: _roadveh_drive_data_41, belugas@8506: _roadveh_drive_data_42, belugas@8506: _roadveh_drive_data_43, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: _roadveh_drive_data_48, belugas@8506: _roadveh_drive_data_49, belugas@8506: _roadveh_drive_data_50, belugas@8506: _roadveh_drive_data_51, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: _roadveh_drive_data_56, belugas@8506: _roadveh_drive_data_57, belugas@8506: _roadveh_drive_data_58, belugas@8506: _roadveh_drive_data_59, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: }; belugas@8506: belugas@8506: static const RoadDriveEntry _roadveh_tram_turn_ne_0[] = { belugas@8506: {15, 5}, belugas@8506: {14, 5}, belugas@8506: {13, 5}, belugas@8506: {12, 5}, belugas@8506: {11, 5}, belugas@8506: {10, 5}, belugas@8506: { 9, 5}, belugas@8506: { 8, 5}, belugas@8506: { 7, 5}, belugas@8506: { 6, 5}, belugas@8506: { 5, 5}, belugas@8506: { 4, 5}, belugas@8506: { 3, 5}, belugas@8506: { 2, 5}, belugas@8506: { 1, 5}, belugas@8506: { 0, 5}, belugas@8506: { 0, 6}, belugas@8506: { 0, 7}, belugas@8506: { 0, 8}, belugas@8506: { 0, 9}, belugas@8506: {RDE_TURNED | DIAGDIR_SW, 0}, belugas@8506: { 1, 9}, belugas@8506: { 2, 9}, belugas@8506: { 3, 9}, belugas@8506: { 4, 9}, belugas@8506: { 5, 9}, belugas@8506: { 6, 9}, belugas@8506: { 7, 9}, belugas@8506: { 8, 9}, belugas@8506: { 9, 9}, belugas@8506: {10, 9}, belugas@8506: {11, 9}, belugas@8506: {12, 9}, belugas@8506: {13, 9}, belugas@8506: {14, 9}, belugas@8506: {15, 9}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SW, 0} belugas@8506: }; belugas@8506: belugas@8506: static const RoadDriveEntry _roadveh_tram_turn_ne_1[] = { belugas@8506: {15, 9}, belugas@8506: {14, 9}, belugas@8506: {13, 9}, belugas@8506: {12, 9}, belugas@8506: {11, 9}, belugas@8506: {10, 9}, belugas@8506: { 9, 9}, belugas@8506: { 8, 9}, belugas@8506: { 7, 9}, belugas@8506: { 6, 9}, belugas@8506: { 5, 9}, belugas@8506: { 4, 9}, belugas@8506: { 3, 9}, belugas@8506: { 2, 9}, belugas@8506: { 1, 9}, belugas@8506: { 0, 9}, belugas@8506: { 0, 8}, belugas@8506: { 0, 7}, belugas@8506: { 0, 6}, belugas@8506: { 0, 5}, belugas@8506: {RDE_TURNED | DIAGDIR_SW, 0}, belugas@8506: { 1, 5}, belugas@8506: { 2, 5}, belugas@8506: { 3, 5}, belugas@8506: { 4, 5}, belugas@8506: { 5, 5}, belugas@8506: { 6, 5}, belugas@8506: { 7, 5}, belugas@8506: { 8, 5}, belugas@8506: { 9, 5}, belugas@8506: {10, 5}, belugas@8506: {11, 5}, belugas@8506: {12, 5}, belugas@8506: {13, 5}, belugas@8506: {14, 5}, belugas@8506: {15, 5}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SW, 0} belugas@8506: }; belugas@8506: belugas@8506: static const RoadDriveEntry _roadveh_tram_turn_se_0[] = { belugas@8506: {5, 0}, belugas@8506: {5, 1}, belugas@8506: {5, 2}, belugas@8506: {5, 3}, belugas@8506: {5, 4}, belugas@8506: {5, 5}, belugas@8506: {5, 6}, belugas@8506: {5, 7}, belugas@8506: {5, 8}, belugas@8506: {5, 9}, belugas@8506: {5, 10}, belugas@8506: {5, 11}, belugas@8506: {5, 12}, belugas@8506: {5, 13}, belugas@8506: {5, 14}, belugas@8506: {5, 15}, belugas@8506: {6, 15}, belugas@8506: {7, 15}, belugas@8506: {8, 15}, belugas@8506: {9, 15}, belugas@8506: {RDE_TURNED | DIAGDIR_NW, 0}, belugas@8506: {9, 14}, belugas@8506: {9, 13}, belugas@8506: {9, 12}, belugas@8506: {9, 11}, belugas@8506: {9, 10}, belugas@8506: {9, 9}, belugas@8506: {9, 8}, belugas@8506: {9, 7}, belugas@8506: {9, 6}, belugas@8506: {9, 5}, belugas@8506: {9, 4}, belugas@8506: {9, 3}, belugas@8506: {9, 2}, belugas@8506: {9, 1}, belugas@8506: {9, 0}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NW, 0} belugas@8506: }; belugas@8506: belugas@8506: static const RoadDriveEntry _roadveh_tram_turn_se_1[] = { belugas@8506: {9, 0}, belugas@8506: {9, 1}, belugas@8506: {9, 2}, belugas@8506: {9, 3}, belugas@8506: {9, 4}, belugas@8506: {9, 5}, belugas@8506: {9, 6}, belugas@8506: {9, 7}, belugas@8506: {9, 8}, belugas@8506: {9, 9}, belugas@8506: {9, 10}, belugas@8506: {9, 11}, belugas@8506: {9, 12}, belugas@8506: {9, 13}, belugas@8506: {9, 14}, belugas@8506: {9, 15}, belugas@8506: {8, 15}, belugas@8506: {7, 15}, belugas@8506: {6, 15}, belugas@8506: {5, 15}, belugas@8506: {RDE_TURNED | DIAGDIR_NW, 0}, belugas@8506: {5, 14}, belugas@8506: {5, 13}, belugas@8506: {5, 12}, belugas@8506: {5, 11}, belugas@8506: {5, 10}, belugas@8506: {5, 9}, belugas@8506: {5, 8}, belugas@8506: {5, 7}, belugas@8506: {5, 6}, belugas@8506: {5, 5}, belugas@8506: {5, 4}, belugas@8506: {5, 3}, belugas@8506: {5, 2}, belugas@8506: {5, 1}, belugas@8506: {5, 0}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NW, 0} belugas@8506: }; belugas@8506: belugas@8506: static const RoadDriveEntry _roadveh_tram_turn_sw_0[] = { belugas@8506: { 0, 9}, belugas@8506: { 1, 9}, belugas@8506: { 2, 9}, belugas@8506: { 3, 9}, belugas@8506: { 4, 9}, belugas@8506: { 5, 9}, belugas@8506: { 6, 9}, belugas@8506: { 7, 9}, belugas@8506: { 8, 9}, belugas@8506: { 9, 9}, belugas@8506: {10, 9}, belugas@8506: {11, 9}, belugas@8506: {12, 9}, belugas@8506: {13, 9}, belugas@8506: {14, 9}, belugas@8506: {15, 9}, belugas@8506: {15, 8}, belugas@8506: {15, 7}, belugas@8506: {15, 6}, belugas@8506: {15, 5}, rubidium@10174: {RDE_TURNED | DIAGDIR_NE, 0}, belugas@8506: {14, 5}, belugas@8506: {13, 5}, belugas@8506: {12, 5}, belugas@8506: {11, 5}, belugas@8506: {10, 5}, belugas@8506: { 9, 5}, belugas@8506: { 8, 5}, belugas@8506: { 7, 5}, belugas@8506: { 6, 5}, belugas@8506: { 5, 5}, belugas@8506: { 4, 5}, belugas@8506: { 3, 5}, belugas@8506: { 2, 5}, belugas@8506: { 1, 5}, belugas@8506: { 0, 5}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_tram_turn_sw_1[] = { belugas@8506: { 0, 5}, belugas@8506: { 1, 5}, belugas@8506: { 2, 5}, belugas@8506: { 3, 5}, belugas@8506: { 4, 5}, belugas@8506: { 5, 5}, belugas@8506: { 6, 5}, belugas@8506: { 7, 5}, belugas@8506: { 8, 5}, belugas@8506: { 9, 5}, belugas@8506: {10, 5}, belugas@8506: {11, 5}, belugas@8506: {12, 5}, belugas@8506: {13, 5}, belugas@8506: {14, 5}, belugas@8506: {15, 5}, belugas@8506: {15, 6}, belugas@8506: {15, 7}, belugas@8506: {15, 8}, belugas@8506: {15, 9}, belugas@8506: {RDE_TURNED | DIAGDIR_NE, 0}, belugas@8506: {14, 9}, belugas@8506: {13, 9}, belugas@8506: {12, 9}, belugas@8506: {11, 9}, belugas@8506: {10, 9}, belugas@8506: { 9, 9}, belugas@8506: { 8, 9}, belugas@8506: { 7, 9}, belugas@8506: { 6, 9}, belugas@8506: { 5, 9}, belugas@8506: { 4, 9}, belugas@8506: { 3, 9}, belugas@8506: { 2, 9}, belugas@8506: { 1, 9}, belugas@8506: { 0, 9}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_NE, 0} belugas@8506: }; belugas@8506: belugas@8506: static const RoadDriveEntry _roadveh_tram_turn_nw_0[] = { belugas@8506: {9, 15}, belugas@8506: {9, 14}, belugas@8506: {9, 13}, belugas@8506: {9, 12}, belugas@8506: {9, 11}, belugas@8506: {9, 10}, belugas@8506: {9, 9}, belugas@8506: {9, 8}, belugas@8506: {9, 7}, belugas@8506: {9, 6}, belugas@8506: {9, 5}, belugas@8506: {9, 4}, belugas@8506: {9, 3}, belugas@8506: {9, 2}, belugas@8506: {9, 1}, belugas@8506: {9, 0}, belugas@8506: {8, 0}, belugas@8506: {7, 0}, belugas@8506: {6, 0}, belugas@8506: {5, 0}, belugas@8506: {RDE_TURNED | DIAGDIR_SE, 0}, belugas@8506: {5, 1}, belugas@8506: {5, 2}, belugas@8506: {5, 3}, belugas@8506: {5, 4}, belugas@8506: {5, 5}, belugas@8506: {5, 6}, belugas@8506: {5, 7}, belugas@8506: {5, 8}, belugas@8506: {5, 9}, belugas@8506: {5, 10}, belugas@8506: {5, 11}, belugas@8506: {5, 12}, belugas@8506: {5, 13}, belugas@8506: {5, 14}, belugas@8506: {5, 15}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SE, 0} belugas@8506: }; belugas@8506: static const RoadDriveEntry _roadveh_tram_turn_nw_1[] = { belugas@8506: {5, 15}, belugas@8506: {5, 14}, belugas@8506: {5, 13}, belugas@8506: {5, 12}, belugas@8506: {5, 11}, belugas@8506: {5, 10}, belugas@8506: {5, 9}, belugas@8506: {5, 8}, belugas@8506: {5, 7}, belugas@8506: {5, 6}, belugas@8506: {5, 5}, belugas@8506: {5, 4}, belugas@8506: {5, 3}, belugas@8506: {5, 2}, belugas@8506: {5, 1}, belugas@8506: {5, 0}, belugas@8506: {6, 0}, belugas@8506: {7, 0}, belugas@8506: {8, 0}, belugas@8506: {9, 0}, belugas@8506: {RDE_TURNED | DIAGDIR_SE, 0}, belugas@8506: {9, 1}, belugas@8506: {9, 2}, belugas@8506: {9, 3}, belugas@8506: {9, 4}, belugas@8506: {9, 5}, belugas@8506: {9, 6}, belugas@8506: {9, 7}, belugas@8506: {9, 8}, belugas@8506: {9, 9}, belugas@8506: {9, 10}, belugas@8506: {9, 11}, belugas@8506: {9, 12}, belugas@8506: {9, 13}, belugas@8506: {9, 14}, belugas@8506: {9, 15}, belugas@8506: {RDE_NEXT_TILE | DIAGDIR_SE, 0} belugas@8506: }; belugas@8506: belugas@8506: static const RoadDriveEntry * const _road_tram_drive_data[] = { belugas@8506: _roadveh_drive_data_0, belugas@8506: _roadveh_drive_data_1, belugas@8506: _roadveh_drive_data_2, belugas@8506: _roadveh_drive_data_3, belugas@8506: _roadveh_drive_data_4, belugas@8506: _roadveh_drive_data_5, belugas@8506: _roadveh_tram_turn_ne_0, belugas@8506: _roadveh_tram_turn_se_0, belugas@8506: _roadveh_drive_data_8, belugas@8506: _roadveh_drive_data_9, belugas@8506: _roadveh_drive_data_10, belugas@8506: _roadveh_drive_data_11, belugas@8506: _roadveh_drive_data_12, belugas@8506: _roadveh_drive_data_13, belugas@8506: _roadveh_tram_turn_sw_0, belugas@8506: _roadveh_tram_turn_nw_0, belugas@8506: _roadveh_drive_data_16, belugas@8506: _roadveh_drive_data_17, belugas@8506: _roadveh_drive_data_18, belugas@8506: _roadveh_drive_data_19, belugas@8506: _roadveh_drive_data_20, belugas@8506: _roadveh_drive_data_21, belugas@8506: _roadveh_tram_turn_ne_1, belugas@8506: _roadveh_tram_turn_se_1, belugas@8506: _roadveh_drive_data_24, belugas@8506: _roadveh_drive_data_25, belugas@8506: _roadveh_drive_data_26, belugas@8506: _roadveh_drive_data_27, belugas@8506: _roadveh_drive_data_28, belugas@8506: _roadveh_drive_data_29, belugas@8506: _roadveh_tram_turn_sw_1, belugas@8506: _roadveh_tram_turn_nw_1, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: NULL, belugas@8506: }; belugas@8506: belugas@8506: static const RoadDriveEntry * const * const _road_drive_data[2] = { belugas@8506: _road_road_drive_data, belugas@8506: _road_tram_drive_data, belugas@8506: };