From 034150c199a07279d00df06194c5d06741e8b33d Mon Sep 17 00:00:00 2001 From: belugas Date: Thu, 7 Feb 2008 17:01:06 +0000 Subject: (svn r12081) -Codechange: Rename table/roadveh.h to table/roadveh_movment.h It is more descriptive name and it will not upset the generate script anymore --- src/table/roadveh.h | 1470 ------------------------------------------ src/table/roadveh_movement.h | 1470 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 1470 insertions(+), 1470 deletions(-) delete mode 100644 src/table/roadveh.h create mode 100644 src/table/roadveh_movement.h (limited to 'src/table') diff --git a/src/table/roadveh.h b/src/table/roadveh.h deleted file mode 100644 index 2ec38760a..000000000 --- a/src/table/roadveh.h +++ /dev/null @@ -1,1470 +0,0 @@ -/* $Id$ */ - -/** @file table/roadveh.h Data about how a road vehicle must drive on a tile */ - -static const RoadDriveEntry _roadveh_drive_data_0[] = { - {15, 5}, - {14, 5}, - {13, 5}, - {12, 5}, - {11, 5}, - {10, 5}, - { 9, 5}, - { 8, 5}, - { 7, 5}, - { 6, 5}, - { 5, 5}, - { 4, 5}, - { 3, 5}, - { 2, 5}, - { 1, 5}, - { 0, 5}, - {RDE_NEXT_TILE | DIAGDIR_NE, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_1[] = { - {5, 0}, - {5, 1}, - {5, 2}, - {5, 3}, - {5, 4}, - {5, 5}, - {5, 6}, - {5, 7}, - {5, 8}, - {5, 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_2[] = { - {5, 0}, - {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, 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[] = { - { 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, 9}, - {1, 9}, - {2, 9}, - {3, 10}, - {4, 11}, - {5, 12}, - {5, 13}, - {5, 14}, - {5, 15}, - {RDE_NEXT_TILE | DIAGDIR_SE, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_6[] = { - {0, 6}, - {0, 7}, - {0, 8}, - {0, 9}, - {RDE_TURNED | DIAGDIR_SW, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_7[] = { - {6, 15}, - {7, 15}, - {8, 15}, - {9, 15}, - {RDE_TURNED | DIAGDIR_NW, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_8[] = { - { 0, 9}, - { 1, 9}, - { 2, 9}, - { 3, 9}, - { 4, 9}, - { 5, 9}, - { 6, 9}, - { 7, 9}, - { 8, 9}, - { 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_9[] = { - {9, 15}, - {9, 14}, - {9, 13}, - {9, 12}, - {9, 11}, - {9, 10}, - {9, 9}, - {9, 8}, - {9, 7}, - {9, 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_10[] = { - {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}, - { 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, 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}, - {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[] = { - {15, 8}, - {15, 7}, - {15, 6}, - {15, 5}, - {RDE_TURNED | DIAGDIR_NE, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_15[] = { - {8, 0}, - {7, 0}, - {6, 0}, - {5, 0}, - {RDE_TURNED | DIAGDIR_SE, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_16[] = { - {15, 9}, - {14, 9}, - {13, 9}, - {12, 9}, - {11, 9}, - {10, 9}, - { 9, 9}, - { 8, 9}, - { 7, 9}, - { 6, 9}, - { 5, 9}, - { 4, 9}, - { 3, 9}, - { 2, 9}, - { 1, 9}, - { 0, 9}, - {RDE_NEXT_TILE | DIAGDIR_NE, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_17[] = { - {9, 0}, - {9, 1}, - {9, 2}, - {9, 3}, - {9, 4}, - {9, 5}, - {9, 6}, - {9, 7}, - {9, 8}, - {9, 9}, - {9, 10}, - {9, 11}, - {9, 12}, - {9, 13}, - {9, 14}, - {9, 15}, - {RDE_NEXT_TILE | DIAGDIR_SE, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_18[] = { - {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, 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[] = { - { 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, 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} -}; -static const RoadDriveEntry _roadveh_drive_data_22[] = { - {0, 8}, - {0, 7}, - {0, 6}, - {0, 5}, - {RDE_TURNED | DIAGDIR_SW, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_23[] = { - {8, 15}, - {7, 15}, - {6, 15}, - {5, 15}, - {RDE_TURNED | DIAGDIR_NW, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_24[] = { - { 0, 5}, - { 1, 5}, - { 2, 5}, - { 3, 5}, - { 4, 5}, - { 5, 5}, - { 6, 5}, - { 7, 5}, - { 8, 5}, - { 9, 5}, - {10, 5}, - {11, 5}, - {12, 5}, - {13, 5}, - {14, 5}, - {15, 5}, - {RDE_NEXT_TILE | DIAGDIR_SW, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_25[] = { - {5, 15}, - {5, 14}, - {5, 13}, - {5, 12}, - {5, 11}, - {5, 10}, - {5, 9}, - {5, 8}, - {5, 7}, - {5, 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_26[] = { - {0, 5}, - {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[] = { - { 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, 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}, - {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[] = { - {15, 6}, - {15, 7}, - {15, 8}, - {15, 9}, - {RDE_TURNED | DIAGDIR_NE, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_31[] = { - {6, 0}, - {7, 0}, - {8, 0}, - {9, 0}, - {RDE_TURNED | DIAGDIR_SE, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_32[] = { - {15, 5}, - {14, 5}, - {13, 6}, - {13, 7}, - {13, 8}, - {13, 9}, - {13, 10}, - {13, 11}, - {12, 12}, - {11, 12}, - {10, 12}, - { 9, 12}, - { 8, 12}, - { 7, 12}, - { 6, 12}, - { 5, 11}, - { 5, 10}, - { 5, 9}, - { 5, 8}, - { 5, 7}, - { 5, 6}, - { 5, 7}, - { 5, 8}, - { 5, 9}, - { 5, 10}, - { 5, 11}, - { 6, 12}, - { 7, 12}, - { 8, 12}, - { 9, 12}, - {10, 12}, - {11, 12}, - {12, 12}, - {13, 11}, - {13, 10}, - {14, 9}, - {15, 9}, - {RDE_NEXT_TILE | DIAGDIR_SW, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_33[] = { - { 5, 0}, - { 5, 1}, - { 6, 2}, - { 7, 2}, - { 8, 2}, - { 9, 2}, - {10, 2}, - {11, 2}, - {12, 3}, - {12, 4}, - {12, 5}, - {12, 6}, - {12, 7}, - {12, 8}, - {12, 9}, - {11, 10}, - {10, 10}, - { 9, 10}, - { 8, 10}, - { 7, 10}, - { 6, 10}, - { 7, 10}, - { 8, 10}, - { 9, 10}, - {10, 10}, - {11, 10}, - {12, 9}, - {12, 8}, - {12, 7}, - {12, 6}, - {12, 5}, - {12, 4}, - {12, 3}, - {11, 2}, - {10, 2}, - { 9, 1}, - { 9, 0}, - {RDE_NEXT_TILE | DIAGDIR_NW, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_34[] = { - {15, 5}, - {14, 5}, - {13, 6}, - {13, 7}, - {13, 8}, - {13, 9}, - {13, 10}, - {13, 11}, - {12, 12}, - {11, 12}, - {10, 12}, - { 9, 11}, - { 9, 10}, - { 9, 9}, - { 9, 8}, - { 9, 7}, - { 9, 6}, - { 9, 7}, - { 9, 8}, - { 9, 9}, - { 9, 10}, - { 9, 11}, - {10, 12}, - {11, 12}, - {12, 12}, - {13, 11}, - {13, 10}, - {14, 9}, - {15, 9}, - {RDE_NEXT_TILE | DIAGDIR_SW, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_35[] = { - { 5, 0}, - { 5, 1}, - { 6, 2}, - { 7, 2}, - { 8, 2}, - { 9, 2}, - {10, 2}, - {11, 2}, - {12, 3}, - {12, 4}, - {12, 5}, - {11, 6}, - {10, 6}, - { 9, 6}, - { 8, 6}, - { 7, 6}, - { 6, 6}, - { 7, 6}, - { 8, 6}, - { 9, 6}, - {10, 6}, - {11, 6}, - {12, 5}, - {12, 4}, - {12, 3}, - {11, 2}, - {10, 2}, - { 9, 1}, - { 9, 0}, - {RDE_NEXT_TILE | DIAGDIR_NW, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_40[] = { - { 0, 9}, - { 1, 9}, - { 2, 8}, - { 2, 7}, - { 2, 6}, - { 2, 5}, - { 2, 4}, - { 3, 3}, - { 4, 3}, - { 5, 3}, - { 6, 3}, - { 7, 3}, - { 8, 3}, - { 9, 3}, - {10, 4}, - {10, 5}, - {10, 6}, - {10, 7}, - {10, 8}, - {10, 9}, - {10, 8}, - {10, 7}, - {10, 6}, - {10, 5}, - {10, 4}, - { 9, 3}, - { 8, 3}, - { 7, 3}, - { 6, 3}, - { 5, 3}, - { 4, 3}, - { 3, 3}, - { 2, 4}, - { 1, 5}, - { 0, 5}, - {RDE_NEXT_TILE | DIAGDIR_NE, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_41[] = { - {9, 15}, - {9, 14}, - {8, 13}, - {7, 13}, - {6, 13}, - {5, 13}, - {4, 13}, - {3, 12}, - {3, 11}, - {3, 10}, - {3, 9}, - {3, 8}, - {3, 7}, - {3, 6}, - {4, 5}, - {5, 5}, - {6, 5}, - {7, 5}, - {8, 5}, - {9, 5}, - {8, 5}, - {7, 5}, - {6, 5}, - {5, 5}, - {4, 5}, - {3, 6}, - {3, 7}, - {3, 8}, - {3, 9}, - {3, 10}, - {3, 11}, - {3, 12}, - {4, 13}, - {5, 14}, - {5, 15}, - {RDE_NEXT_TILE | DIAGDIR_SE, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_42[] = { - {0, 9}, - {1, 9}, - {2, 8}, - {2, 7}, - {2, 6}, - {2, 5}, - {2, 4}, - {3, 3}, - {4, 3}, - {5, 3}, - {6, 4}, - {6, 5}, - {6, 6}, - {6, 7}, - {6, 8}, - {6, 9}, - {6, 8}, - {6, 7}, - {6, 6}, - {6, 5}, - {6, 4}, - {5, 3}, - {4, 3}, - {3, 3}, - {2, 4}, - {1, 5}, - {0, 5}, - {RDE_NEXT_TILE | DIAGDIR_NE, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_43[] = { - {9, 15}, - {9, 14}, - {8, 13}, - {7, 13}, - {6, 13}, - {5, 13}, - {4, 13}, - {3, 12}, - {3, 11}, - {3, 10}, - {4, 9}, - {5, 9}, - {6, 9}, - {7, 9}, - {8, 9}, - {9, 9}, - {8, 9}, - {7, 9}, - {6, 9}, - {5, 9}, - {4, 9}, - {3, 10}, - {3, 11}, - {3, 12}, - {4, 13}, - {5, 14}, - {5, 15}, - {RDE_NEXT_TILE | DIAGDIR_SE, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_48[] = { - {15, 9}, - {14, 9}, - {13, 10}, - {13, 11}, - {12, 12}, - {11, 12}, - {10, 12}, - { 9, 12}, - { 8, 12}, - { 7, 12}, - { 6, 12}, - { 5, 11}, - { 5, 10}, - { 5, 9}, - { 5, 8}, - { 5, 7}, - { 5, 6}, - { 5, 7}, - { 5, 8}, - { 5, 9}, - { 5, 10}, - { 5, 11}, - { 6, 12}, - { 7, 12}, - { 8, 12}, - { 9, 12}, - {10, 12}, - {11, 12}, - {12, 12}, - {13, 11}, - {13, 10}, - {13, 9}, - {13, 8}, - {13, 7}, - {13, 6}, - {14, 5}, - {15, 5}, - {RDE_NEXT_TILE | DIAGDIR_SW, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_49[] = { - { 9, 0}, - { 9, 1}, - {10, 2}, - {11, 2}, - {12, 3}, - {12, 4}, - {12, 5}, - {12, 6}, - {12, 7}, - {12, 8}, - {12, 9}, - {11, 10}, - {10, 10}, - { 9, 10}, - { 8, 10}, - { 7, 10}, - { 6, 10}, - { 7, 10}, - { 8, 10}, - { 9, 10}, - {10, 10}, - {11, 10}, - {12, 9}, - {12, 8}, - {12, 7}, - {12, 6}, - {12, 5}, - {12, 4}, - {12, 3}, - {11, 2}, - {10, 2}, - { 9, 2}, - { 8, 2}, - { 7, 2}, - { 6, 2}, - { 5, 1}, - { 5, 0}, - {RDE_NEXT_TILE | DIAGDIR_NW, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_50[] = { - {15, 9}, - {14, 9}, - {13, 10}, - {13, 11}, - {12, 12}, - {11, 12}, - {10, 12}, - { 9, 11}, - { 9, 10}, - { 9, 9}, - { 9, 8}, - { 9, 7}, - { 9, 6}, - { 9, 7}, - { 9, 8}, - { 9, 9}, - { 9, 10}, - { 9, 11}, - {10, 12}, - {11, 12}, - {12, 12}, - {13, 11}, - {13, 10}, - {13, 9}, - {13, 8}, - {13, 7}, - {13, 6}, - {14, 5}, - {15, 5}, - {RDE_NEXT_TILE | DIAGDIR_SW, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_51[] = { - { 9, 0}, - { 9, 1}, - {10, 2}, - {11, 2}, - {12, 3}, - {12, 4}, - {12, 5}, - {11, 6}, - {10, 6}, - { 9, 6}, - { 8, 6}, - { 7, 6}, - { 6, 6}, - { 7, 6}, - { 8, 6}, - { 9, 6}, - {10, 6}, - {11, 6}, - {12, 5}, - {12, 4}, - {12, 3}, - {11, 2}, - {10, 2}, - { 9, 2}, - { 8, 2}, - { 7, 2}, - { 6, 2}, - { 5, 1}, - { 5, 0}, - {RDE_NEXT_TILE | DIAGDIR_NW, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_56[] = { - { 0, 5}, - { 1, 5}, - { 2, 4}, - { 3, 3}, - { 4, 3}, - { 5, 3}, - { 6, 3}, - { 7, 3}, - { 8, 3}, - { 9, 3}, - {10, 4}, - {10, 5}, - {10, 6}, - {10, 7}, - {10, 8}, - {10, 9}, - {10, 8}, - {10, 7}, - {10, 6}, - {10, 5}, - {10, 4}, - { 9, 3}, - { 8, 3}, - { 7, 3}, - { 6, 3}, - { 5, 3}, - { 4, 3}, - { 3, 3}, - { 2, 4}, - { 2, 5}, - { 2, 6}, - { 2, 7}, - { 2, 8}, - { 1, 9}, - { 0, 9}, - {RDE_NEXT_TILE | DIAGDIR_NE, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_57[] = { - {5, 15}, - {5, 14}, - {4, 13}, - {3, 12}, - {3, 11}, - {3, 10}, - {3, 9}, - {3, 8}, - {3, 7}, - {3, 6}, - {4, 5}, - {5, 5}, - {6, 5}, - {7, 5}, - {8, 5}, - {9, 5}, - {8, 5}, - {7, 5}, - {6, 5}, - {5, 5}, - {4, 5}, - {3, 6}, - {3, 7}, - {3, 8}, - {3, 9}, - {3, 10}, - {3, 11}, - {3, 12}, - {4, 13}, - {5, 13}, - {6, 13}, - {7, 13}, - {8, 13}, - {9, 14}, - {9, 15}, - {RDE_NEXT_TILE | DIAGDIR_SE, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_58[] = { - {0, 5}, - {1, 5}, - {2, 4}, - {3, 3}, - {4, 3}, - {5, 3}, - {6, 4}, - {6, 5}, - {6, 6}, - {6, 7}, - {6, 8}, - {6, 9}, - {6, 8}, - {6, 7}, - {6, 6}, - {6, 5}, - {6, 4}, - {5, 3}, - {4, 3}, - {3, 3}, - {2, 4}, - {2, 5}, - {2, 6}, - {2, 7}, - {2, 8}, - {1, 9}, - {0, 9}, - {RDE_NEXT_TILE | DIAGDIR_NE, 0} -}; -static const RoadDriveEntry _roadveh_drive_data_59[] = { - {5, 15}, - {5, 14}, - {4, 13}, - {3, 12}, - {3, 11}, - {3, 10}, - {4, 9}, - {5, 9}, - {6, 9}, - {7, 9}, - {8, 9}, - {9, 9}, - {8, 9}, - {7, 9}, - {6, 9}, - {5, 9}, - {4, 9}, - {3, 10}, - {3, 11}, - {3, 12}, - {4, 13}, - {5, 13}, - {6, 13}, - {7, 13}, - {8, 13}, - {9, 14}, - {9, 15}, - {RDE_NEXT_TILE | DIAGDIR_SE, 0} -}; - -static const RoadDriveEntry * const _road_road_drive_data[] = { - _roadveh_drive_data_0, - _roadveh_drive_data_1, - _roadveh_drive_data_2, - _roadveh_drive_data_3, - _roadveh_drive_data_4, - _roadveh_drive_data_5, - _roadveh_drive_data_6, - _roadveh_drive_data_7, - _roadveh_drive_data_8, - _roadveh_drive_data_9, - _roadveh_drive_data_10, - _roadveh_drive_data_11, - _roadveh_drive_data_12, - _roadveh_drive_data_13, - _roadveh_drive_data_14, - _roadveh_drive_data_15, - _roadveh_drive_data_16, - _roadveh_drive_data_17, - _roadveh_drive_data_18, - _roadveh_drive_data_19, - _roadveh_drive_data_20, - _roadveh_drive_data_21, - _roadveh_drive_data_22, - _roadveh_drive_data_23, - _roadveh_drive_data_24, - _roadveh_drive_data_25, - _roadveh_drive_data_26, - _roadveh_drive_data_27, - _roadveh_drive_data_28, - _roadveh_drive_data_29, - _roadveh_drive_data_30, - _roadveh_drive_data_31, - _roadveh_drive_data_32, - _roadveh_drive_data_33, - _roadveh_drive_data_34, - _roadveh_drive_data_35, - NULL, - NULL, - NULL, - NULL, - _roadveh_drive_data_40, - _roadveh_drive_data_41, - _roadveh_drive_data_42, - _roadveh_drive_data_43, - NULL, - NULL, - NULL, - NULL, - _roadveh_drive_data_48, - _roadveh_drive_data_49, - _roadveh_drive_data_50, - _roadveh_drive_data_51, - NULL, - NULL, - NULL, - NULL, - _roadveh_drive_data_56, - _roadveh_drive_data_57, - _roadveh_drive_data_58, - _roadveh_drive_data_59, - NULL, - NULL, - NULL, - NULL, -}; - -static const RoadDriveEntry _roadveh_tram_turn_ne_0[] = { - {15, 5}, - {14, 5}, - {13, 5}, - {12, 5}, - {11, 5}, - {10, 5}, - { 9, 5}, - { 8, 5}, - { 7, 5}, - { 6, 5}, - { 5, 5}, - { 4, 5}, - { 3, 5}, - { 2, 5}, - { 1, 5}, - { 0, 5}, - { 0, 6}, - { 0, 7}, - { 0, 8}, - { 0, 9}, - {RDE_TURNED | DIAGDIR_SW, 0}, - { 1, 9}, - { 2, 9}, - { 3, 9}, - { 4, 9}, - { 5, 9}, - { 6, 9}, - { 7, 9}, - { 8, 9}, - { 9, 9}, - {10, 9}, - {11, 9}, - {12, 9}, - {13, 9}, - {14, 9}, - {15, 9}, - {RDE_NEXT_TILE | DIAGDIR_SW, 0} -}; - -static const RoadDriveEntry _roadveh_tram_turn_ne_1[] = { - {15, 9}, - {14, 9}, - {13, 9}, - {12, 9}, - {11, 9}, - {10, 9}, - { 9, 9}, - { 8, 9}, - { 7, 9}, - { 6, 9}, - { 5, 9}, - { 4, 9}, - { 3, 9}, - { 2, 9}, - { 1, 9}, - { 0, 9}, - { 0, 8}, - { 0, 7}, - { 0, 6}, - { 0, 5}, - {RDE_TURNED | DIAGDIR_SW, 0}, - { 1, 5}, - { 2, 5}, - { 3, 5}, - { 4, 5}, - { 5, 5}, - { 6, 5}, - { 7, 5}, - { 8, 5}, - { 9, 5}, - {10, 5}, - {11, 5}, - {12, 5}, - {13, 5}, - {14, 5}, - {15, 5}, - {RDE_NEXT_TILE | DIAGDIR_SW, 0} -}; - -static const RoadDriveEntry _roadveh_tram_turn_se_0[] = { - {5, 0}, - {5, 1}, - {5, 2}, - {5, 3}, - {5, 4}, - {5, 5}, - {5, 6}, - {5, 7}, - {5, 8}, - {5, 9}, - {5, 10}, - {5, 11}, - {5, 12}, - {5, 13}, - {5, 14}, - {5, 15}, - {6, 15}, - {7, 15}, - {8, 15}, - {9, 15}, - {RDE_TURNED | DIAGDIR_NW, 0}, - {9, 14}, - {9, 13}, - {9, 12}, - {9, 11}, - {9, 10}, - {9, 9}, - {9, 8}, - {9, 7}, - {9, 6}, - {9, 5}, - {9, 4}, - {9, 3}, - {9, 2}, - {9, 1}, - {9, 0}, - {RDE_NEXT_TILE | DIAGDIR_NW, 0} -}; - -static const RoadDriveEntry _roadveh_tram_turn_se_1[] = { - {9, 0}, - {9, 1}, - {9, 2}, - {9, 3}, - {9, 4}, - {9, 5}, - {9, 6}, - {9, 7}, - {9, 8}, - {9, 9}, - {9, 10}, - {9, 11}, - {9, 12}, - {9, 13}, - {9, 14}, - {9, 15}, - {8, 15}, - {7, 15}, - {6, 15}, - {5, 15}, - {RDE_TURNED | DIAGDIR_NW, 0}, - {5, 14}, - {5, 13}, - {5, 12}, - {5, 11}, - {5, 10}, - {5, 9}, - {5, 8}, - {5, 7}, - {5, 6}, - {5, 5}, - {5, 4}, - {5, 3}, - {5, 2}, - {5, 1}, - {5, 0}, - {RDE_NEXT_TILE | DIAGDIR_NW, 0} -}; - -static const RoadDriveEntry _roadveh_tram_turn_sw_0[] = { - { 0, 9}, - { 1, 9}, - { 2, 9}, - { 3, 9}, - { 4, 9}, - { 5, 9}, - { 6, 9}, - { 7, 9}, - { 8, 9}, - { 9, 9}, - {10, 9}, - {11, 9}, - {12, 9}, - {13, 9}, - {14, 9}, - {15, 9}, - {15, 8}, - {15, 7}, - {15, 6}, - {15, 5}, - {RDE_TURNED | DIAGDIR_SW, 0}, - {14, 5}, - {13, 5}, - {12, 5}, - {11, 5}, - {10, 5}, - { 9, 5}, - { 8, 5}, - { 7, 5}, - { 6, 5}, - { 5, 5}, - { 4, 5}, - { 3, 5}, - { 2, 5}, - { 1, 5}, - { 0, 5}, - {RDE_NEXT_TILE | DIAGDIR_NE, 0} -}; -static const RoadDriveEntry _roadveh_tram_turn_sw_1[] = { - { 0, 5}, - { 1, 5}, - { 2, 5}, - { 3, 5}, - { 4, 5}, - { 5, 5}, - { 6, 5}, - { 7, 5}, - { 8, 5}, - { 9, 5}, - {10, 5}, - {11, 5}, - {12, 5}, - {13, 5}, - {14, 5}, - {15, 5}, - {15, 6}, - {15, 7}, - {15, 8}, - {15, 9}, - {RDE_TURNED | DIAGDIR_NE, 0}, - {14, 9}, - {13, 9}, - {12, 9}, - {11, 9}, - {10, 9}, - { 9, 9}, - { 8, 9}, - { 7, 9}, - { 6, 9}, - { 5, 9}, - { 4, 9}, - { 3, 9}, - { 2, 9}, - { 1, 9}, - { 0, 9}, - {RDE_NEXT_TILE | DIAGDIR_NE, 0} -}; - -static const RoadDriveEntry _roadveh_tram_turn_nw_0[] = { - {9, 15}, - {9, 14}, - {9, 13}, - {9, 12}, - {9, 11}, - {9, 10}, - {9, 9}, - {9, 8}, - {9, 7}, - {9, 6}, - {9, 5}, - {9, 4}, - {9, 3}, - {9, 2}, - {9, 1}, - {9, 0}, - {8, 0}, - {7, 0}, - {6, 0}, - {5, 0}, - {RDE_TURNED | DIAGDIR_SE, 0}, - {5, 1}, - {5, 2}, - {5, 3}, - {5, 4}, - {5, 5}, - {5, 6}, - {5, 7}, - {5, 8}, - {5, 9}, - {5, 10}, - {5, 11}, - {5, 12}, - {5, 13}, - {5, 14}, - {5, 15}, - {RDE_NEXT_TILE | DIAGDIR_SE, 0} -}; -static const RoadDriveEntry _roadveh_tram_turn_nw_1[] = { - {5, 15}, - {5, 14}, - {5, 13}, - {5, 12}, - {5, 11}, - {5, 10}, - {5, 9}, - {5, 8}, - {5, 7}, - {5, 6}, - {5, 5}, - {5, 4}, - {5, 3}, - {5, 2}, - {5, 1}, - {5, 0}, - {6, 0}, - {7, 0}, - {8, 0}, - {9, 0}, - {RDE_TURNED | DIAGDIR_SE, 0}, - {9, 1}, - {9, 2}, - {9, 3}, - {9, 4}, - {9, 5}, - {9, 6}, - {9, 7}, - {9, 8}, - {9, 9}, - {9, 10}, - {9, 11}, - {9, 12}, - {9, 13}, - {9, 14}, - {9, 15}, - {RDE_NEXT_TILE | DIAGDIR_SE, 0} -}; - -static const RoadDriveEntry * const _road_tram_drive_data[] = { - _roadveh_drive_data_0, - _roadveh_drive_data_1, - _roadveh_drive_data_2, - _roadveh_drive_data_3, - _roadveh_drive_data_4, - _roadveh_drive_data_5, - _roadveh_tram_turn_ne_0, - _roadveh_tram_turn_se_0, - _roadveh_drive_data_8, - _roadveh_drive_data_9, - _roadveh_drive_data_10, - _roadveh_drive_data_11, - _roadveh_drive_data_12, - _roadveh_drive_data_13, - _roadveh_tram_turn_sw_0, - _roadveh_tram_turn_nw_0, - _roadveh_drive_data_16, - _roadveh_drive_data_17, - _roadveh_drive_data_18, - _roadveh_drive_data_19, - _roadveh_drive_data_20, - _roadveh_drive_data_21, - _roadveh_tram_turn_ne_1, - _roadveh_tram_turn_se_1, - _roadveh_drive_data_24, - _roadveh_drive_data_25, - _roadveh_drive_data_26, - _roadveh_drive_data_27, - _roadveh_drive_data_28, - _roadveh_drive_data_29, - _roadveh_tram_turn_sw_1, - _roadveh_tram_turn_nw_1, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, -}; - -static const RoadDriveEntry * const * const _road_drive_data[2] = { - _road_road_drive_data, - _road_tram_drive_data, -}; diff --git a/src/table/roadveh_movement.h b/src/table/roadveh_movement.h new file mode 100644 index 000000000..a6f3e543a --- /dev/null +++ b/src/table/roadveh_movement.h @@ -0,0 +1,1470 @@ +/* $Id$ */ + +/** @file table/roadveh_movement.h Data about how a road vehicle must drive on a tile */ + +static const RoadDriveEntry _roadveh_drive_data_0[] = { + {15, 5}, + {14, 5}, + {13, 5}, + {12, 5}, + {11, 5}, + {10, 5}, + { 9, 5}, + { 8, 5}, + { 7, 5}, + { 6, 5}, + { 5, 5}, + { 4, 5}, + { 3, 5}, + { 2, 5}, + { 1, 5}, + { 0, 5}, + {RDE_NEXT_TILE | DIAGDIR_NE, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_1[] = { + {5, 0}, + {5, 1}, + {5, 2}, + {5, 3}, + {5, 4}, + {5, 5}, + {5, 6}, + {5, 7}, + {5, 8}, + {5, 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_2[] = { + {5, 0}, + {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, 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[] = { + { 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, 9}, + {1, 9}, + {2, 9}, + {3, 10}, + {4, 11}, + {5, 12}, + {5, 13}, + {5, 14}, + {5, 15}, + {RDE_NEXT_TILE | DIAGDIR_SE, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_6[] = { + {0, 6}, + {0, 7}, + {0, 8}, + {0, 9}, + {RDE_TURNED | DIAGDIR_SW, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_7[] = { + {6, 15}, + {7, 15}, + {8, 15}, + {9, 15}, + {RDE_TURNED | DIAGDIR_NW, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_8[] = { + { 0, 9}, + { 1, 9}, + { 2, 9}, + { 3, 9}, + { 4, 9}, + { 5, 9}, + { 6, 9}, + { 7, 9}, + { 8, 9}, + { 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_9[] = { + {9, 15}, + {9, 14}, + {9, 13}, + {9, 12}, + {9, 11}, + {9, 10}, + {9, 9}, + {9, 8}, + {9, 7}, + {9, 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_10[] = { + {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}, + { 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, 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}, + {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[] = { + {15, 8}, + {15, 7}, + {15, 6}, + {15, 5}, + {RDE_TURNED | DIAGDIR_NE, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_15[] = { + {8, 0}, + {7, 0}, + {6, 0}, + {5, 0}, + {RDE_TURNED | DIAGDIR_SE, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_16[] = { + {15, 9}, + {14, 9}, + {13, 9}, + {12, 9}, + {11, 9}, + {10, 9}, + { 9, 9}, + { 8, 9}, + { 7, 9}, + { 6, 9}, + { 5, 9}, + { 4, 9}, + { 3, 9}, + { 2, 9}, + { 1, 9}, + { 0, 9}, + {RDE_NEXT_TILE | DIAGDIR_NE, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_17[] = { + {9, 0}, + {9, 1}, + {9, 2}, + {9, 3}, + {9, 4}, + {9, 5}, + {9, 6}, + {9, 7}, + {9, 8}, + {9, 9}, + {9, 10}, + {9, 11}, + {9, 12}, + {9, 13}, + {9, 14}, + {9, 15}, + {RDE_NEXT_TILE | DIAGDIR_SE, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_18[] = { + {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, 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[] = { + { 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, 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} +}; +static const RoadDriveEntry _roadveh_drive_data_22[] = { + {0, 8}, + {0, 7}, + {0, 6}, + {0, 5}, + {RDE_TURNED | DIAGDIR_SW, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_23[] = { + {8, 15}, + {7, 15}, + {6, 15}, + {5, 15}, + {RDE_TURNED | DIAGDIR_NW, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_24[] = { + { 0, 5}, + { 1, 5}, + { 2, 5}, + { 3, 5}, + { 4, 5}, + { 5, 5}, + { 6, 5}, + { 7, 5}, + { 8, 5}, + { 9, 5}, + {10, 5}, + {11, 5}, + {12, 5}, + {13, 5}, + {14, 5}, + {15, 5}, + {RDE_NEXT_TILE | DIAGDIR_SW, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_25[] = { + {5, 15}, + {5, 14}, + {5, 13}, + {5, 12}, + {5, 11}, + {5, 10}, + {5, 9}, + {5, 8}, + {5, 7}, + {5, 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_26[] = { + {0, 5}, + {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[] = { + { 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, 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}, + {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[] = { + {15, 6}, + {15, 7}, + {15, 8}, + {15, 9}, + {RDE_TURNED | DIAGDIR_NE, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_31[] = { + {6, 0}, + {7, 0}, + {8, 0}, + {9, 0}, + {RDE_TURNED | DIAGDIR_SE, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_32[] = { + {15, 5}, + {14, 5}, + {13, 6}, + {13, 7}, + {13, 8}, + {13, 9}, + {13, 10}, + {13, 11}, + {12, 12}, + {11, 12}, + {10, 12}, + { 9, 12}, + { 8, 12}, + { 7, 12}, + { 6, 12}, + { 5, 11}, + { 5, 10}, + { 5, 9}, + { 5, 8}, + { 5, 7}, + { 5, 6}, + { 5, 7}, + { 5, 8}, + { 5, 9}, + { 5, 10}, + { 5, 11}, + { 6, 12}, + { 7, 12}, + { 8, 12}, + { 9, 12}, + {10, 12}, + {11, 12}, + {12, 12}, + {13, 11}, + {13, 10}, + {14, 9}, + {15, 9}, + {RDE_NEXT_TILE | DIAGDIR_SW, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_33[] = { + { 5, 0}, + { 5, 1}, + { 6, 2}, + { 7, 2}, + { 8, 2}, + { 9, 2}, + {10, 2}, + {11, 2}, + {12, 3}, + {12, 4}, + {12, 5}, + {12, 6}, + {12, 7}, + {12, 8}, + {12, 9}, + {11, 10}, + {10, 10}, + { 9, 10}, + { 8, 10}, + { 7, 10}, + { 6, 10}, + { 7, 10}, + { 8, 10}, + { 9, 10}, + {10, 10}, + {11, 10}, + {12, 9}, + {12, 8}, + {12, 7}, + {12, 6}, + {12, 5}, + {12, 4}, + {12, 3}, + {11, 2}, + {10, 2}, + { 9, 1}, + { 9, 0}, + {RDE_NEXT_TILE | DIAGDIR_NW, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_34[] = { + {15, 5}, + {14, 5}, + {13, 6}, + {13, 7}, + {13, 8}, + {13, 9}, + {13, 10}, + {13, 11}, + {12, 12}, + {11, 12}, + {10, 12}, + { 9, 11}, + { 9, 10}, + { 9, 9}, + { 9, 8}, + { 9, 7}, + { 9, 6}, + { 9, 7}, + { 9, 8}, + { 9, 9}, + { 9, 10}, + { 9, 11}, + {10, 12}, + {11, 12}, + {12, 12}, + {13, 11}, + {13, 10}, + {14, 9}, + {15, 9}, + {RDE_NEXT_TILE | DIAGDIR_SW, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_35[] = { + { 5, 0}, + { 5, 1}, + { 6, 2}, + { 7, 2}, + { 8, 2}, + { 9, 2}, + {10, 2}, + {11, 2}, + {12, 3}, + {12, 4}, + {12, 5}, + {11, 6}, + {10, 6}, + { 9, 6}, + { 8, 6}, + { 7, 6}, + { 6, 6}, + { 7, 6}, + { 8, 6}, + { 9, 6}, + {10, 6}, + {11, 6}, + {12, 5}, + {12, 4}, + {12, 3}, + {11, 2}, + {10, 2}, + { 9, 1}, + { 9, 0}, + {RDE_NEXT_TILE | DIAGDIR_NW, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_40[] = { + { 0, 9}, + { 1, 9}, + { 2, 8}, + { 2, 7}, + { 2, 6}, + { 2, 5}, + { 2, 4}, + { 3, 3}, + { 4, 3}, + { 5, 3}, + { 6, 3}, + { 7, 3}, + { 8, 3}, + { 9, 3}, + {10, 4}, + {10, 5}, + {10, 6}, + {10, 7}, + {10, 8}, + {10, 9}, + {10, 8}, + {10, 7}, + {10, 6}, + {10, 5}, + {10, 4}, + { 9, 3}, + { 8, 3}, + { 7, 3}, + { 6, 3}, + { 5, 3}, + { 4, 3}, + { 3, 3}, + { 2, 4}, + { 1, 5}, + { 0, 5}, + {RDE_NEXT_TILE | DIAGDIR_NE, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_41[] = { + {9, 15}, + {9, 14}, + {8, 13}, + {7, 13}, + {6, 13}, + {5, 13}, + {4, 13}, + {3, 12}, + {3, 11}, + {3, 10}, + {3, 9}, + {3, 8}, + {3, 7}, + {3, 6}, + {4, 5}, + {5, 5}, + {6, 5}, + {7, 5}, + {8, 5}, + {9, 5}, + {8, 5}, + {7, 5}, + {6, 5}, + {5, 5}, + {4, 5}, + {3, 6}, + {3, 7}, + {3, 8}, + {3, 9}, + {3, 10}, + {3, 11}, + {3, 12}, + {4, 13}, + {5, 14}, + {5, 15}, + {RDE_NEXT_TILE | DIAGDIR_SE, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_42[] = { + {0, 9}, + {1, 9}, + {2, 8}, + {2, 7}, + {2, 6}, + {2, 5}, + {2, 4}, + {3, 3}, + {4, 3}, + {5, 3}, + {6, 4}, + {6, 5}, + {6, 6}, + {6, 7}, + {6, 8}, + {6, 9}, + {6, 8}, + {6, 7}, + {6, 6}, + {6, 5}, + {6, 4}, + {5, 3}, + {4, 3}, + {3, 3}, + {2, 4}, + {1, 5}, + {0, 5}, + {RDE_NEXT_TILE | DIAGDIR_NE, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_43[] = { + {9, 15}, + {9, 14}, + {8, 13}, + {7, 13}, + {6, 13}, + {5, 13}, + {4, 13}, + {3, 12}, + {3, 11}, + {3, 10}, + {4, 9}, + {5, 9}, + {6, 9}, + {7, 9}, + {8, 9}, + {9, 9}, + {8, 9}, + {7, 9}, + {6, 9}, + {5, 9}, + {4, 9}, + {3, 10}, + {3, 11}, + {3, 12}, + {4, 13}, + {5, 14}, + {5, 15}, + {RDE_NEXT_TILE | DIAGDIR_SE, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_48[] = { + {15, 9}, + {14, 9}, + {13, 10}, + {13, 11}, + {12, 12}, + {11, 12}, + {10, 12}, + { 9, 12}, + { 8, 12}, + { 7, 12}, + { 6, 12}, + { 5, 11}, + { 5, 10}, + { 5, 9}, + { 5, 8}, + { 5, 7}, + { 5, 6}, + { 5, 7}, + { 5, 8}, + { 5, 9}, + { 5, 10}, + { 5, 11}, + { 6, 12}, + { 7, 12}, + { 8, 12}, + { 9, 12}, + {10, 12}, + {11, 12}, + {12, 12}, + {13, 11}, + {13, 10}, + {13, 9}, + {13, 8}, + {13, 7}, + {13, 6}, + {14, 5}, + {15, 5}, + {RDE_NEXT_TILE | DIAGDIR_SW, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_49[] = { + { 9, 0}, + { 9, 1}, + {10, 2}, + {11, 2}, + {12, 3}, + {12, 4}, + {12, 5}, + {12, 6}, + {12, 7}, + {12, 8}, + {12, 9}, + {11, 10}, + {10, 10}, + { 9, 10}, + { 8, 10}, + { 7, 10}, + { 6, 10}, + { 7, 10}, + { 8, 10}, + { 9, 10}, + {10, 10}, + {11, 10}, + {12, 9}, + {12, 8}, + {12, 7}, + {12, 6}, + {12, 5}, + {12, 4}, + {12, 3}, + {11, 2}, + {10, 2}, + { 9, 2}, + { 8, 2}, + { 7, 2}, + { 6, 2}, + { 5, 1}, + { 5, 0}, + {RDE_NEXT_TILE | DIAGDIR_NW, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_50[] = { + {15, 9}, + {14, 9}, + {13, 10}, + {13, 11}, + {12, 12}, + {11, 12}, + {10, 12}, + { 9, 11}, + { 9, 10}, + { 9, 9}, + { 9, 8}, + { 9, 7}, + { 9, 6}, + { 9, 7}, + { 9, 8}, + { 9, 9}, + { 9, 10}, + { 9, 11}, + {10, 12}, + {11, 12}, + {12, 12}, + {13, 11}, + {13, 10}, + {13, 9}, + {13, 8}, + {13, 7}, + {13, 6}, + {14, 5}, + {15, 5}, + {RDE_NEXT_TILE | DIAGDIR_SW, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_51[] = { + { 9, 0}, + { 9, 1}, + {10, 2}, + {11, 2}, + {12, 3}, + {12, 4}, + {12, 5}, + {11, 6}, + {10, 6}, + { 9, 6}, + { 8, 6}, + { 7, 6}, + { 6, 6}, + { 7, 6}, + { 8, 6}, + { 9, 6}, + {10, 6}, + {11, 6}, + {12, 5}, + {12, 4}, + {12, 3}, + {11, 2}, + {10, 2}, + { 9, 2}, + { 8, 2}, + { 7, 2}, + { 6, 2}, + { 5, 1}, + { 5, 0}, + {RDE_NEXT_TILE | DIAGDIR_NW, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_56[] = { + { 0, 5}, + { 1, 5}, + { 2, 4}, + { 3, 3}, + { 4, 3}, + { 5, 3}, + { 6, 3}, + { 7, 3}, + { 8, 3}, + { 9, 3}, + {10, 4}, + {10, 5}, + {10, 6}, + {10, 7}, + {10, 8}, + {10, 9}, + {10, 8}, + {10, 7}, + {10, 6}, + {10, 5}, + {10, 4}, + { 9, 3}, + { 8, 3}, + { 7, 3}, + { 6, 3}, + { 5, 3}, + { 4, 3}, + { 3, 3}, + { 2, 4}, + { 2, 5}, + { 2, 6}, + { 2, 7}, + { 2, 8}, + { 1, 9}, + { 0, 9}, + {RDE_NEXT_TILE | DIAGDIR_NE, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_57[] = { + {5, 15}, + {5, 14}, + {4, 13}, + {3, 12}, + {3, 11}, + {3, 10}, + {3, 9}, + {3, 8}, + {3, 7}, + {3, 6}, + {4, 5}, + {5, 5}, + {6, 5}, + {7, 5}, + {8, 5}, + {9, 5}, + {8, 5}, + {7, 5}, + {6, 5}, + {5, 5}, + {4, 5}, + {3, 6}, + {3, 7}, + {3, 8}, + {3, 9}, + {3, 10}, + {3, 11}, + {3, 12}, + {4, 13}, + {5, 13}, + {6, 13}, + {7, 13}, + {8, 13}, + {9, 14}, + {9, 15}, + {RDE_NEXT_TILE | DIAGDIR_SE, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_58[] = { + {0, 5}, + {1, 5}, + {2, 4}, + {3, 3}, + {4, 3}, + {5, 3}, + {6, 4}, + {6, 5}, + {6, 6}, + {6, 7}, + {6, 8}, + {6, 9}, + {6, 8}, + {6, 7}, + {6, 6}, + {6, 5}, + {6, 4}, + {5, 3}, + {4, 3}, + {3, 3}, + {2, 4}, + {2, 5}, + {2, 6}, + {2, 7}, + {2, 8}, + {1, 9}, + {0, 9}, + {RDE_NEXT_TILE | DIAGDIR_NE, 0} +}; +static const RoadDriveEntry _roadveh_drive_data_59[] = { + {5, 15}, + {5, 14}, + {4, 13}, + {3, 12}, + {3, 11}, + {3, 10}, + {4, 9}, + {5, 9}, + {6, 9}, + {7, 9}, + {8, 9}, + {9, 9}, + {8, 9}, + {7, 9}, + {6, 9}, + {5, 9}, + {4, 9}, + {3, 10}, + {3, 11}, + {3, 12}, + {4, 13}, + {5, 13}, + {6, 13}, + {7, 13}, + {8, 13}, + {9, 14}, + {9, 15}, + {RDE_NEXT_TILE | DIAGDIR_SE, 0} +}; + +static const RoadDriveEntry * const _road_road_drive_data[] = { + _roadveh_drive_data_0, + _roadveh_drive_data_1, + _roadveh_drive_data_2, + _roadveh_drive_data_3, + _roadveh_drive_data_4, + _roadveh_drive_data_5, + _roadveh_drive_data_6, + _roadveh_drive_data_7, + _roadveh_drive_data_8, + _roadveh_drive_data_9, + _roadveh_drive_data_10, + _roadveh_drive_data_11, + _roadveh_drive_data_12, + _roadveh_drive_data_13, + _roadveh_drive_data_14, + _roadveh_drive_data_15, + _roadveh_drive_data_16, + _roadveh_drive_data_17, + _roadveh_drive_data_18, + _roadveh_drive_data_19, + _roadveh_drive_data_20, + _roadveh_drive_data_21, + _roadveh_drive_data_22, + _roadveh_drive_data_23, + _roadveh_drive_data_24, + _roadveh_drive_data_25, + _roadveh_drive_data_26, + _roadveh_drive_data_27, + _roadveh_drive_data_28, + _roadveh_drive_data_29, + _roadveh_drive_data_30, + _roadveh_drive_data_31, + _roadveh_drive_data_32, + _roadveh_drive_data_33, + _roadveh_drive_data_34, + _roadveh_drive_data_35, + NULL, + NULL, + NULL, + NULL, + _roadveh_drive_data_40, + _roadveh_drive_data_41, + _roadveh_drive_data_42, + _roadveh_drive_data_43, + NULL, + NULL, + NULL, + NULL, + _roadveh_drive_data_48, + _roadveh_drive_data_49, + _roadveh_drive_data_50, + _roadveh_drive_data_51, + NULL, + NULL, + NULL, + NULL, + _roadveh_drive_data_56, + _roadveh_drive_data_57, + _roadveh_drive_data_58, + _roadveh_drive_data_59, + NULL, + NULL, + NULL, + NULL, +}; + +static const RoadDriveEntry _roadveh_tram_turn_ne_0[] = { + {15, 5}, + {14, 5}, + {13, 5}, + {12, 5}, + {11, 5}, + {10, 5}, + { 9, 5}, + { 8, 5}, + { 7, 5}, + { 6, 5}, + { 5, 5}, + { 4, 5}, + { 3, 5}, + { 2, 5}, + { 1, 5}, + { 0, 5}, + { 0, 6}, + { 0, 7}, + { 0, 8}, + { 0, 9}, + {RDE_TURNED | DIAGDIR_SW, 0}, + { 1, 9}, + { 2, 9}, + { 3, 9}, + { 4, 9}, + { 5, 9}, + { 6, 9}, + { 7, 9}, + { 8, 9}, + { 9, 9}, + {10, 9}, + {11, 9}, + {12, 9}, + {13, 9}, + {14, 9}, + {15, 9}, + {RDE_NEXT_TILE | DIAGDIR_SW, 0} +}; + +static const RoadDriveEntry _roadveh_tram_turn_ne_1[] = { + {15, 9}, + {14, 9}, + {13, 9}, + {12, 9}, + {11, 9}, + {10, 9}, + { 9, 9}, + { 8, 9}, + { 7, 9}, + { 6, 9}, + { 5, 9}, + { 4, 9}, + { 3, 9}, + { 2, 9}, + { 1, 9}, + { 0, 9}, + { 0, 8}, + { 0, 7}, + { 0, 6}, + { 0, 5}, + {RDE_TURNED | DIAGDIR_SW, 0}, + { 1, 5}, + { 2, 5}, + { 3, 5}, + { 4, 5}, + { 5, 5}, + { 6, 5}, + { 7, 5}, + { 8, 5}, + { 9, 5}, + {10, 5}, + {11, 5}, + {12, 5}, + {13, 5}, + {14, 5}, + {15, 5}, + {RDE_NEXT_TILE | DIAGDIR_SW, 0} +}; + +static const RoadDriveEntry _roadveh_tram_turn_se_0[] = { + {5, 0}, + {5, 1}, + {5, 2}, + {5, 3}, + {5, 4}, + {5, 5}, + {5, 6}, + {5, 7}, + {5, 8}, + {5, 9}, + {5, 10}, + {5, 11}, + {5, 12}, + {5, 13}, + {5, 14}, + {5, 15}, + {6, 15}, + {7, 15}, + {8, 15}, + {9, 15}, + {RDE_TURNED | DIAGDIR_NW, 0}, + {9, 14}, + {9, 13}, + {9, 12}, + {9, 11}, + {9, 10}, + {9, 9}, + {9, 8}, + {9, 7}, + {9, 6}, + {9, 5}, + {9, 4}, + {9, 3}, + {9, 2}, + {9, 1}, + {9, 0}, + {RDE_NEXT_TILE | DIAGDIR_NW, 0} +}; + +static const RoadDriveEntry _roadveh_tram_turn_se_1[] = { + {9, 0}, + {9, 1}, + {9, 2}, + {9, 3}, + {9, 4}, + {9, 5}, + {9, 6}, + {9, 7}, + {9, 8}, + {9, 9}, + {9, 10}, + {9, 11}, + {9, 12}, + {9, 13}, + {9, 14}, + {9, 15}, + {8, 15}, + {7, 15}, + {6, 15}, + {5, 15}, + {RDE_TURNED | DIAGDIR_NW, 0}, + {5, 14}, + {5, 13}, + {5, 12}, + {5, 11}, + {5, 10}, + {5, 9}, + {5, 8}, + {5, 7}, + {5, 6}, + {5, 5}, + {5, 4}, + {5, 3}, + {5, 2}, + {5, 1}, + {5, 0}, + {RDE_NEXT_TILE | DIAGDIR_NW, 0} +}; + +static const RoadDriveEntry _roadveh_tram_turn_sw_0[] = { + { 0, 9}, + { 1, 9}, + { 2, 9}, + { 3, 9}, + { 4, 9}, + { 5, 9}, + { 6, 9}, + { 7, 9}, + { 8, 9}, + { 9, 9}, + {10, 9}, + {11, 9}, + {12, 9}, + {13, 9}, + {14, 9}, + {15, 9}, + {15, 8}, + {15, 7}, + {15, 6}, + {15, 5}, + {RDE_TURNED | DIAGDIR_SW, 0}, + {14, 5}, + {13, 5}, + {12, 5}, + {11, 5}, + {10, 5}, + { 9, 5}, + { 8, 5}, + { 7, 5}, + { 6, 5}, + { 5, 5}, + { 4, 5}, + { 3, 5}, + { 2, 5}, + { 1, 5}, + { 0, 5}, + {RDE_NEXT_TILE | DIAGDIR_NE, 0} +}; +static const RoadDriveEntry _roadveh_tram_turn_sw_1[] = { + { 0, 5}, + { 1, 5}, + { 2, 5}, + { 3, 5}, + { 4, 5}, + { 5, 5}, + { 6, 5}, + { 7, 5}, + { 8, 5}, + { 9, 5}, + {10, 5}, + {11, 5}, + {12, 5}, + {13, 5}, + {14, 5}, + {15, 5}, + {15, 6}, + {15, 7}, + {15, 8}, + {15, 9}, + {RDE_TURNED | DIAGDIR_NE, 0}, + {14, 9}, + {13, 9}, + {12, 9}, + {11, 9}, + {10, 9}, + { 9, 9}, + { 8, 9}, + { 7, 9}, + { 6, 9}, + { 5, 9}, + { 4, 9}, + { 3, 9}, + { 2, 9}, + { 1, 9}, + { 0, 9}, + {RDE_NEXT_TILE | DIAGDIR_NE, 0} +}; + +static const RoadDriveEntry _roadveh_tram_turn_nw_0[] = { + {9, 15}, + {9, 14}, + {9, 13}, + {9, 12}, + {9, 11}, + {9, 10}, + {9, 9}, + {9, 8}, + {9, 7}, + {9, 6}, + {9, 5}, + {9, 4}, + {9, 3}, + {9, 2}, + {9, 1}, + {9, 0}, + {8, 0}, + {7, 0}, + {6, 0}, + {5, 0}, + {RDE_TURNED | DIAGDIR_SE, 0}, + {5, 1}, + {5, 2}, + {5, 3}, + {5, 4}, + {5, 5}, + {5, 6}, + {5, 7}, + {5, 8}, + {5, 9}, + {5, 10}, + {5, 11}, + {5, 12}, + {5, 13}, + {5, 14}, + {5, 15}, + {RDE_NEXT_TILE | DIAGDIR_SE, 0} +}; +static const RoadDriveEntry _roadveh_tram_turn_nw_1[] = { + {5, 15}, + {5, 14}, + {5, 13}, + {5, 12}, + {5, 11}, + {5, 10}, + {5, 9}, + {5, 8}, + {5, 7}, + {5, 6}, + {5, 5}, + {5, 4}, + {5, 3}, + {5, 2}, + {5, 1}, + {5, 0}, + {6, 0}, + {7, 0}, + {8, 0}, + {9, 0}, + {RDE_TURNED | DIAGDIR_SE, 0}, + {9, 1}, + {9, 2}, + {9, 3}, + {9, 4}, + {9, 5}, + {9, 6}, + {9, 7}, + {9, 8}, + {9, 9}, + {9, 10}, + {9, 11}, + {9, 12}, + {9, 13}, + {9, 14}, + {9, 15}, + {RDE_NEXT_TILE | DIAGDIR_SE, 0} +}; + +static const RoadDriveEntry * const _road_tram_drive_data[] = { + _roadveh_drive_data_0, + _roadveh_drive_data_1, + _roadveh_drive_data_2, + _roadveh_drive_data_3, + _roadveh_drive_data_4, + _roadveh_drive_data_5, + _roadveh_tram_turn_ne_0, + _roadveh_tram_turn_se_0, + _roadveh_drive_data_8, + _roadveh_drive_data_9, + _roadveh_drive_data_10, + _roadveh_drive_data_11, + _roadveh_drive_data_12, + _roadveh_drive_data_13, + _roadveh_tram_turn_sw_0, + _roadveh_tram_turn_nw_0, + _roadveh_drive_data_16, + _roadveh_drive_data_17, + _roadveh_drive_data_18, + _roadveh_drive_data_19, + _roadveh_drive_data_20, + _roadveh_drive_data_21, + _roadveh_tram_turn_ne_1, + _roadveh_tram_turn_se_1, + _roadveh_drive_data_24, + _roadveh_drive_data_25, + _roadveh_drive_data_26, + _roadveh_drive_data_27, + _roadveh_drive_data_28, + _roadveh_drive_data_29, + _roadveh_tram_turn_sw_1, + _roadveh_tram_turn_nw_1, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, +}; + +static const RoadDriveEntry * const * const _road_drive_data[2] = { + _road_road_drive_data, + _road_tram_drive_data, +}; -- cgit v1.2.3-70-g09d2