4 * This file is part of OpenTTD.
5 * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
6 * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
7 * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
10 /** @file livery.h Functions/types related to livery colours. */
15 #include "company_type.h"
17 static const byte LIT_NONE
= 0; ///< Don't show the liveries at all
18 static const byte LIT_COMPANY
= 1; ///< Show the liveries of your own company
19 static const byte LIT_ALL
= 2; ///< Show the liveries of all companies
21 /** List of different livery schemes. */
34 LS_PASSENGER_WAGON_STEAM
,
35 LS_PASSENGER_WAGON_DIESEL
,
36 LS_PASSENGER_WAGON_ELECTRIC
,
37 LS_PASSENGER_WAGON_MONORAIL
,
38 LS_PASSENGER_WAGON_MAGLEV
,
54 /* Trams (appear on Road Vehicles tab) */
61 DECLARE_POSTFIX_INCREMENT(LiveryScheme
)
62 /** Helper information for extract tool. */
63 template <> struct EnumPropsT
<LiveryScheme
> : MakeEnumPropsT
<LiveryScheme
, byte
, LS_BEGIN
, LS_END
, LS_END
, 8> {};
65 /** List of different livery classes, used only by the livery GUI. */
75 /** Information about a particular livery. */
77 bool in_use
; ///< Set if this livery should be used instead of the default livery.
78 byte colour1
; ///< First colour, for all vehicles.
79 byte colour2
; ///< Second colour, for vehicles with 2CC support.
82 void ResetCompanyLivery(Company
*c
);