|
|
|
@ -157,27 +157,27 @@ struct GRFConfig : ZeroedMemoryAllocator {
|
|
|
|
|
/* Remove the copy assignment, as the default implementation will not do the right thing. */
|
|
|
|
|
GRFConfig &operator=(GRFConfig &rhs) = delete;
|
|
|
|
|
|
|
|
|
|
GRFIdentifier ident; ///< grfid and md5sum to uniquely identify newgrfs
|
|
|
|
|
uint8 original_md5sum[16]; ///< MD5 checksum of original file if only a 'compatible' file was loaded
|
|
|
|
|
std::string filename; ///< Filename - either with or without full path
|
|
|
|
|
GRFTextWrapper name; ///< NOSAVE: GRF name (Action 0x08)
|
|
|
|
|
GRFTextWrapper info; ///< NOSAVE: GRF info (author, copyright, ...) (Action 0x08)
|
|
|
|
|
GRFTextWrapper url; ///< NOSAVE: URL belonging to this GRF.
|
|
|
|
|
std::unique_ptr<GRFError> error; ///< NOSAVE: Error/Warning during GRF loading (Action 0x0B)
|
|
|
|
|
|
|
|
|
|
uint32 version; ///< NOSAVE: Version a NewGRF can set so only the newest NewGRF is shown
|
|
|
|
|
uint32 min_loadable_version; ///< NOSAVE: Minimum compatible version a NewGRF can define
|
|
|
|
|
uint8 flags; ///< NOSAVE: GCF_Flags, bitset
|
|
|
|
|
GRFStatus status; ///< NOSAVE: GRFStatus, enum
|
|
|
|
|
uint32 grf_bugs; ///< NOSAVE: bugs in this GRF in this run, @see enum GRFBugs
|
|
|
|
|
uint32 param[0x80]; ///< GRF parameters
|
|
|
|
|
uint8 num_params; ///< Number of used parameters
|
|
|
|
|
uint8 num_valid_params; ///< NOSAVE: Number of valid parameters (action 0x14)
|
|
|
|
|
uint8 palette; ///< GRFPalette, bitset
|
|
|
|
|
GRFIdentifier ident; ///< grfid and md5sum to uniquely identify newgrfs
|
|
|
|
|
uint8 original_md5sum[16]; ///< MD5 checksum of original file if only a 'compatible' file was loaded
|
|
|
|
|
std::string filename; ///< Filename - either with or without full path
|
|
|
|
|
GRFTextWrapper name; ///< NOSAVE: GRF name (Action 0x08)
|
|
|
|
|
GRFTextWrapper info; ///< NOSAVE: GRF info (author, copyright, ...) (Action 0x08)
|
|
|
|
|
GRFTextWrapper url; ///< NOSAVE: URL belonging to this GRF.
|
|
|
|
|
std::unique_ptr<GRFError> error; ///< NOSAVE: Error/Warning during GRF loading (Action 0x0B)
|
|
|
|
|
|
|
|
|
|
uint32 version; ///< NOSAVE: Version a NewGRF can set so only the newest NewGRF is shown
|
|
|
|
|
uint32 min_loadable_version; ///< NOSAVE: Minimum compatible version a NewGRF can define
|
|
|
|
|
uint8 flags; ///< NOSAVE: GCF_Flags, bitset
|
|
|
|
|
GRFStatus status; ///< NOSAVE: GRFStatus, enum
|
|
|
|
|
uint32 grf_bugs; ///< NOSAVE: bugs in this GRF in this run, @see enum GRFBugs
|
|
|
|
|
uint32 param[0x80]; ///< GRF parameters
|
|
|
|
|
uint8 num_params; ///< Number of used parameters
|
|
|
|
|
uint8 num_valid_params; ///< NOSAVE: Number of valid parameters (action 0x14)
|
|
|
|
|
uint8 palette; ///< GRFPalette, bitset
|
|
|
|
|
std::vector<std::optional<GRFParameterInfo>> param_info; ///< NOSAVE: extra information about the parameters
|
|
|
|
|
bool has_param_defaults; ///< NOSAVE: did this newgrf specify any defaults for it's parameters
|
|
|
|
|
bool has_param_defaults; ///< NOSAVE: did this newgrf specify any defaults for it's parameters
|
|
|
|
|
|
|
|
|
|
struct GRFConfig *next; ///< NOSAVE: Next item in the linked list
|
|
|
|
|
struct GRFConfig *next; ///< NOSAVE: Next item in the linked list
|
|
|
|
|
|
|
|
|
|
void CopyParams(const GRFConfig &src);
|
|
|
|
|
|
|
|
|
|