struct structRoadNetworkType { int NoOfCharsInRoadNetworkTypeName; ascii[NoOfCharsInRoadNetworkTypeName] NetworkTypeName; byte[4] KeyPartsColour; // rgba 0xFFFF FFFF means 'default' byte[4] NormalPartsColour; // rgba 0xFFFF FFFF means 'default' short FilledLine; // 0x0000=No, 0x0100=Yes double MaxAngle; // degrees double MaxBankAngle; // degrees int NoOfStraightParts; if (NoOfStraightParts != 0) { structRoadNetworkTypeStraightPart[NoOfStraightParts] RoadNetworkTypeStraightParts; } int NoOfCurveParts; if (NoOfCurveParts != 0) { structRoadNetworkTypeCurvePart[NoOfCurveParts] RoadNetworkTypeCurveParts; } int NoOfSpecialParts; if (NoOfSpecialParts != 0) { structRoadNetworkTypeSpecialPart[NoOfSpecialParts] RoadNetworkTypeSpecialParts; } int NoOfTerminatorParts; if (NoOfTerminatorParts != 0) { structRoadNetworkTypeTerminatorPart[NoOfTerminatorParts] RoadNetworkTypeTerminatorParts; } }