peter1138@4603: /* $Id$ */ peter1138@4603: rubidium@9111: /** @file livery.h Functions/types related to livery colours. */ belugas@6201: peter1138@4603: #ifndef LIVERY_H peter1138@4603: #define LIVERY_H peter1138@4603: rubidium@10208: #include "company_type.h" peter1138@4603: peter1138@4603: /* List of different livery schemes. */ rubidium@6248: enum LiveryScheme { rubidium@5587: LS_BEGIN = 0, rubidium@5587: LS_DEFAULT = 0, peter1138@4603: peter1138@4603: /* Rail vehicles */ peter1138@4603: LS_STEAM, peter1138@4603: LS_DIESEL, peter1138@4603: LS_ELECTRIC, peter1138@4603: LS_MONORAIL, peter1138@4603: LS_MAGLEV, peter1138@4603: LS_DMU, peter1138@4603: LS_EMU, peter1138@4604: LS_PASSENGER_WAGON_STEAM, peter1138@4604: LS_PASSENGER_WAGON_DIESEL, peter1138@4604: LS_PASSENGER_WAGON_ELECTRIC, rubidium@8309: LS_PASSENGER_WAGON_MONORAIL, rubidium@8309: LS_PASSENGER_WAGON_MAGLEV, peter1138@4603: LS_FREIGHT_WAGON, peter1138@4603: peter1138@4603: /* Road vehicles */ peter1138@4603: LS_BUS, peter1138@4603: LS_TRUCK, peter1138@4603: peter1138@4603: /* Ships */ peter1138@4603: LS_PASSENGER_SHIP, peter1138@4603: LS_FREIGHT_SHIP, peter1138@4603: peter1138@4603: /* Aircraft */ peter1138@4603: LS_HELICOPTER, peter1138@4603: LS_SMALL_PLANE, peter1138@4603: LS_LARGE_PLANE, peter1138@4603: peter1138@6724: /* Trams (appear on Road Vehicles tab) */ peter1138@6724: LS_PASSENGER_TRAM, peter1138@6724: LS_FREIGHT_TRAM, peter1138@6724: peter1138@4603: LS_END rubidium@6248: }; peter1138@4603: rubidium@5587: DECLARE_POSTFIX_INCREMENT(LiveryScheme); peter1138@4603: peter1138@4603: /* List of different livery classes, used only by the livery GUI. */ rubidium@6248: enum LiveryClass { peter1138@4603: LC_OTHER, peter1138@4603: LC_RAIL, peter1138@4603: LC_ROAD, peter1138@4603: LC_SHIP, peter1138@4603: LC_AIRCRAFT, peter1138@4603: LC_END rubidium@6248: }; peter1138@4603: peter1138@4603: rubidium@6248: struct Livery { peter1138@4603: bool in_use; ///< Set if this livery should be used instead of the default livery. peter1138@4603: byte colour1; ///< First colour, for all vehicles. peter1138@4603: byte colour2; ///< Second colour, for vehicles with 2CC support. rubidium@6248: }; peter1138@4603: rubidium@8254: /** rubidium@10207: * Reset the livery schemes to the company's primary colour. rubidium@10207: * This is used on loading games without livery information and on new company start up. rubidium@10207: * @param c Company to reset. rubidium@8254: */ rubidium@10207: void ResetCompanyLivery(Company *c); rubidium@8254: peter1138@4603: #endif /* LIVERY_H */