(svn r12081) -Codechange: Rename table/roadveh.h to table/roadveh_movment.h
authorbelugas
Thu, 07 Feb 2008 17:01:06 +0000
changeset 9002 e7570592e22c
parent 9001 a74251b49d1d
child 9003 fb6894b89147
(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
projects/openttd_vs80.vcproj
projects/openttd_vs90.vcproj
source.list
src/roadveh_cmd.cpp
src/table/roadveh.h
src/table/roadveh_movement.h
--- a/projects/openttd_vs80.vcproj	Thu Feb 07 16:17:00 2008 +0000
+++ b/projects/openttd_vs80.vcproj	Thu Feb 07 17:01:06 2008 +0000
@@ -1700,7 +1700,7 @@
 				>
 			</File>
 			<File
-				RelativePath=".\..\src\table\roadveh.h"
+				RelativePath=".\..\src\table\roadveh_movement.h"
 				>
 			</File>
 			<File
--- a/projects/openttd_vs90.vcproj	Thu Feb 07 16:17:00 2008 +0000
+++ b/projects/openttd_vs90.vcproj	Thu Feb 07 17:01:06 2008 +0000
@@ -1697,7 +1697,7 @@
 				>
 			</File>
 			<File
-				RelativePath=".\..\src\table\roadveh.h"
+				RelativePath=".\..\src\table\roadveh_movement.h"
 				>
 			</File>
 			<File
--- a/source.list	Thu Feb 07 16:17:00 2008 +0000
+++ b/source.list	Thu Feb 07 17:01:06 2008 +0000
@@ -336,7 +336,7 @@
 table/namegen.h
 table/palettes.h
 table/road_land.h
-table/roadveh.h
+table/roadveh_movement.h
 table/sprites.h
 table/station_land.h
 ../objs/langs/table/strings.h
--- a/src/roadveh_cmd.cpp	Thu Feb 07 16:17:00 2008 +0000
+++ b/src/roadveh_cmd.cpp	Thu Feb 07 17:01:06 2008 +0000
@@ -1342,7 +1342,7 @@
 	byte x, y;
 };
 
-#include "table/roadveh.h"
+#include "table/roadveh_movement.h"
 
 static const byte _road_veh_data_1[] = {
 	20, 20, 16, 16, 0, 0, 0, 0,
--- a/src/table/roadveh.h	Thu Feb 07 16:17:00 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -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,
-};
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/table/roadveh_movement.h	Thu Feb 07 17:01:06 2008 +0000
@@ -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,
+};