mirror of https://github.com/OpenTTD/OpenTTD
Change: Increase company CC storage to 32 bits to allow for custom colours.
parent
6b330da74e
commit
504a26a60a
|
@ -15,7 +15,7 @@
|
|||
#include "livery.h"
|
||||
|
||||
enum ClientID : uint32_t;
|
||||
enum Colours : uint8_t;
|
||||
enum Colours : uint32_t;
|
||||
|
||||
CommandCost CmdCompanyCtrl(DoCommandFlags flags, CompanyCtrlAction cca, CompanyID company_id, CompanyRemoveReason reason, ClientID client_id);
|
||||
CommandCost CmdCompanyAllowListCtrl(DoCommandFlags flags, CompanyAllowListCtrlAction action, const std::string &public_key);
|
||||
|
|
|
@ -592,7 +592,7 @@ template <SpriteID TSprite = SPR_SQUARE>
|
|||
class DropDownListColourItem : public DropDownIcon<DropDownString<DropDownListItem>> {
|
||||
public:
|
||||
DropDownListColourItem(int colour, bool masked) :
|
||||
DropDownIcon<DropDownString<DropDownListItem>>(TSprite, GetColourPalette(static_cast<Colours>(colour % COLOUR_END)), GetString(colour < COLOUR_END ? (STR_COLOUR_DARK_BLUE + colour) : STR_COLOUR_DEFAULT), colour, masked)
|
||||
DropDownIcon<DropDownString<DropDownListItem>>(TSprite, GetColourPalette(static_cast<Colours>(colour % COLOUR_END)), GetString((Colours)colour < COLOUR_END ? (STR_COLOUR_DARK_BLUE + colour) : STR_COLOUR_DEFAULT), colour, masked)
|
||||
{
|
||||
}
|
||||
};
|
||||
|
|
|
@ -280,7 +280,7 @@ struct SubSprite {
|
|||
int left, top, right, bottom;
|
||||
};
|
||||
|
||||
enum Colours : uint8_t {
|
||||
enum Colours : uint32_t {
|
||||
COLOUR_BEGIN,
|
||||
COLOUR_DARK_BLUE = COLOUR_BEGIN,
|
||||
COLOUR_PALE_GREEN,
|
||||
|
@ -299,7 +299,7 @@ enum Colours : uint8_t {
|
|||
COLOUR_GREY,
|
||||
COLOUR_WHITE,
|
||||
COLOUR_END,
|
||||
INVALID_COLOUR = 0xFF,
|
||||
INVALID_COLOUR = UINT32_MAX,
|
||||
};
|
||||
DECLARE_INCREMENT_DECREMENT_OPERATORS(Colours)
|
||||
DECLARE_ENUM_AS_ADDABLE(Colours)
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
#include "vehiclelist.h"
|
||||
#include "vehiclelist_cmd.h"
|
||||
|
||||
enum Colours : uint8_t;
|
||||
enum Colours : uint32_t;
|
||||
enum class GroupFlag : uint8_t;
|
||||
|
||||
/** Action for \c CmdAlterGroup. */
|
||||
|
|
|
@ -411,8 +411,10 @@ class SlCompanyLiveries : public DefaultSaveLoadHandler<SlCompanyLiveries, Compa
|
|||
public:
|
||||
static inline const SaveLoad description[] = {
|
||||
SLE_CONDVAR(Livery, in_use, SLE_UINT8, SLV_34, SL_MAX_VERSION),
|
||||
SLE_CONDVAR(Livery, colour1, SLE_UINT8, SLV_34, SL_MAX_VERSION),
|
||||
SLE_CONDVAR(Livery, colour2, SLE_UINT8, SLV_34, SL_MAX_VERSION),
|
||||
SLE_CONDVAR(Livery, colour1, SLE_FILE_U8 | SLE_VAR_U32, SLV_34, SLV_CUSTOM_COMPANY_COLOURS),
|
||||
SLE_CONDVAR(Livery, colour2, SLE_FILE_U8 | SLE_VAR_U32, SLV_34, SLV_CUSTOM_COMPANY_COLOURS),
|
||||
SLE_CONDVAR(Livery, colour1, SLE_UINT32, SLV_CUSTOM_COMPANY_COLOURS, SL_MAX_VERSION),
|
||||
SLE_CONDVAR(Livery, colour2, SLE_UINT32, SLV_CUSTOM_COMPANY_COLOURS, SL_MAX_VERSION),
|
||||
};
|
||||
static inline const SaveLoadCompatTable compat_description = _company_liveries_compat;
|
||||
|
||||
|
@ -511,7 +513,8 @@ static const SaveLoad _company_desc[] = {
|
|||
SLE_CONDVAR(CompanyProperties, current_loan, SLE_INT64, SLV_65, SL_MAX_VERSION),
|
||||
SLE_CONDVAR(CompanyProperties, max_loan, SLE_INT64, SLV_MAX_LOAN_FOR_COMPANY, SL_MAX_VERSION),
|
||||
|
||||
SLE_VAR(CompanyProperties, colour, SLE_UINT8),
|
||||
SLE_CONDVAR(CompanyProperties, colour, SLE_FILE_U8 | SLE_VAR_U32, SL_MIN_VERSION, SLV_CUSTOM_COMPANY_COLOURS),
|
||||
SLE_CONDVAR(CompanyProperties, colour, SLE_UINT32, SLV_CUSTOM_COMPANY_COLOURS, SL_MAX_VERSION),
|
||||
SLE_VAR(CompanyProperties, money_fraction, SLE_UINT8),
|
||||
SLE_VAR(CompanyProperties, block_preview, SLE_UINT8),
|
||||
|
||||
|
|
|
@ -23,8 +23,10 @@ static const SaveLoad _group_desc[] = {
|
|||
SLE_VAR(Group, vehicle_type, SLE_UINT8),
|
||||
SLE_VAR(Group, flags, SLE_UINT8),
|
||||
SLE_CONDVAR(Group, livery.in_use, SLE_UINT8, SLV_GROUP_LIVERIES, SL_MAX_VERSION),
|
||||
SLE_CONDVAR(Group, livery.colour1, SLE_UINT8, SLV_GROUP_LIVERIES, SL_MAX_VERSION),
|
||||
SLE_CONDVAR(Group, livery.colour2, SLE_UINT8, SLV_GROUP_LIVERIES, SL_MAX_VERSION),
|
||||
SLE_CONDVAR(Group, livery.colour1, SLE_FILE_U8 | SLE_VAR_U32, SLV_GROUP_LIVERIES, SLV_CUSTOM_COMPANY_COLOURS),
|
||||
SLE_CONDVAR(Group, livery.colour2, SLE_FILE_U8 | SLE_VAR_U32, SLV_GROUP_LIVERIES, SLV_CUSTOM_COMPANY_COLOURS),
|
||||
SLE_CONDVAR(Group, livery.colour1, SLE_UINT32, SLV_CUSTOM_COMPANY_COLOURS, SL_MAX_VERSION),
|
||||
SLE_CONDVAR(Group, livery.colour2, SLE_UINT32, SLV_CUSTOM_COMPANY_COLOURS, SL_MAX_VERSION),
|
||||
SLE_CONDVAR(Group, parent, SLE_UINT16, SLV_189, SL_MAX_VERSION),
|
||||
SLE_CONDVAR(Group, number, SLE_UINT16, SLV_GROUP_NUMBERS, SL_MAX_VERSION),
|
||||
};
|
||||
|
|
|
@ -179,7 +179,8 @@ static const SaveLoad _industry_desc[] = {
|
|||
|
||||
SLE_VAR(Industry, type, SLE_UINT8),
|
||||
SLE_VAR(Industry, owner, SLE_UINT8),
|
||||
SLE_VAR(Industry, random_colour, SLE_UINT8),
|
||||
SLE_CONDVAR(Industry, random_colour, SLE_FILE_U8 | SLE_VAR_U32, SL_MIN_VERSION, SLV_CUSTOM_COMPANY_COLOURS),
|
||||
SLE_CONDVAR(Industry, random_colour, SLE_UINT32, SLV_CUSTOM_COMPANY_COLOURS, SL_MAX_VERSION),
|
||||
SLE_CONDVAR(Industry, last_prod_year, SLE_FILE_U8 | SLE_VAR_I32, SL_MIN_VERSION, SLV_31),
|
||||
SLE_CONDVAR(Industry, last_prod_year, SLE_INT32, SLV_31, SL_MAX_VERSION),
|
||||
SLE_VAR(Industry, was_cargo_delivered, SLE_UINT8),
|
||||
|
|
|
@ -406,6 +406,7 @@ enum SaveLoadVersion : uint16_t {
|
|||
SLV_FACE_STYLES, ///< 355 PR#14319 Addition of face styles, replacing gender and ethnicity.
|
||||
SLV_INDUSTRY_NUM_VALID_HISTORY, ///< 356 PR#14416 Store number of valid history records for industries.
|
||||
SLV_INDUSTRY_ACCEPTED_HISTORY, ///< 357 PR#14321 Add per-industry history of cargo delivered and waiting.
|
||||
SLV_CUSTOM_COMPANY_COLOURS, ///< 358 PR#11634 Custom company colours.
|
||||
|
||||
SL_MAX_VERSION, ///< Highest possible saveload version
|
||||
};
|
||||
|
|
|
@ -348,7 +348,7 @@ post_cb = InvalidateCompanyLiveryWindow
|
|||
|
||||
[SDTC_VAR]
|
||||
var = gui.starting_colour
|
||||
type = SLE_UINT8
|
||||
type = SLE_UINT32
|
||||
flags = SettingFlag::NotInSave, SettingFlag::NoNetworkSync, SettingFlag::GuiDropdown
|
||||
def = COLOUR_END
|
||||
min = 0
|
||||
|
@ -359,7 +359,7 @@ strval = STR_COLOUR_DARK_BLUE
|
|||
|
||||
[SDTC_VAR]
|
||||
var = gui.starting_colour_secondary
|
||||
type = SLE_UINT8
|
||||
type = SLE_UINT32
|
||||
flags = SettingFlag::NotInSave, SettingFlag::NoNetworkSync, SettingFlag::GuiDropdown
|
||||
def = COLOUR_END
|
||||
min = 0
|
||||
|
|
Loading…
Reference in New Issue