OpenTTD
Functions | Variables
newgrf_sl.cpp File Reference

Code handling saving and loading of newgrf config. More...

#include "../stdafx.h"
#include "../fios.h"
#include "saveload.h"
#include "newgrf_sl.h"
#include "../safeguards.h"

Go to the source code of this file.

Functions

void Save_NewGRFMapping (const OverrideManagerBase &mapping)
 Save a GRF ID + local id -> OpenTTD's id mapping. More...
 
void Load_NewGRFMapping (OverrideManagerBase &mapping)
 Load a GRF ID + local id -> OpenTTD's id mapping. More...
 
static void Save_NGRF ()
 
static void Load_NGRF_common (GRFConfig *&grfconfig)
 
static void Load_NGRF ()
 
static void Check_NGRF ()
 

Variables

static const SaveLoad _newgrf_mapping_desc []
 Save and load the mapping between a spec and the NewGRF it came from. More...
 
static const SaveLoad _grfconfig_desc []
 
const ChunkHandler _newgrf_chunk_handlers []
 

Detailed Description

Code handling saving and loading of newgrf config.

Definition in file newgrf_sl.cpp.

Function Documentation

◆ Load_NewGRFMapping()

void Load_NewGRFMapping ( OverrideManagerBase mapping)

Load a GRF ID + local id -> OpenTTD's id mapping.

Parameters
mappingThe mapping to load.

Definition at line 44 of file newgrf_sl.cpp.

References OverrideManagerBase::mapping_ID, OverrideManagerBase::ResetMapping(), SlErrorCorrupt(), SlIterateArray(), and SlObject().

◆ Save_NewGRFMapping()

void Save_NewGRFMapping ( const OverrideManagerBase mapping)

Save a GRF ID + local id -> OpenTTD's id mapping.

Parameters
mappingThe mapping to save.

Definition at line 32 of file newgrf_sl.cpp.

Variable Documentation

◆ _grfconfig_desc

const SaveLoad _grfconfig_desc[]
static
Initial value:
= {
SLE_STR(GRFConfig, filename, SLE_STR, 0x40),
SLE_VAR(GRFConfig, ident.grfid, SLE_UINT32),
SLE_ARR(GRFConfig, ident.md5sum, SLE_UINT8, 16),
SLE_CONDVAR(GRFConfig, version, SLE_UINT32, 151, SL_MAX_VERSION),
SLE_ARR(GRFConfig, param, SLE_UINT32, 0x80),
SLE_VAR(GRFConfig, num_params, SLE_UINT8),
SLE_CONDVAR(GRFConfig, palette, SLE_UINT8, 101, SL_MAX_VERSION),
}
#define SLE_ARR(base, variable, type, length)
Storage of an array in every version of a savegame.
Definition: saveload.h:313
#define SLE_CONDVAR(base, variable, type, from, to)
Storage of a variable in some savegame versions.
Definition: saveload.h:246
Information about GRF, used in the game and (part of it) in savegames.
#define SL_MAX_VERSION
Highest possible savegame version.
Definition: saveload.h:96
#define SLE_VAR(base, variable, type)
Storage of a variable in every version of a savegame.
Definition: saveload.h:296
#define SLE_STR(base, variable, type, length)
Storage of a string in every savegame version.
Definition: saveload.h:322

Definition at line 60 of file newgrf_sl.cpp.

◆ _newgrf_chunk_handlers

const ChunkHandler _newgrf_chunk_handlers[]
Initial value:
= {
{ 'NGRF', Save_NGRF, Load_NGRF, NULL, Check_NGRF, CH_ARRAY | CH_LAST }
}
Last chunk in this array.
Definition: saveload.h:104

◆ _newgrf_mapping_desc

const SaveLoad _newgrf_mapping_desc[]
static
Initial value:
= {
SLE_VAR(EntityIDMapping, grfid, SLE_UINT32),
SLE_VAR(EntityIDMapping, entity_id, SLE_UINT8),
SLE_VAR(EntityIDMapping, substitute_id, SLE_UINT8),
}
Maps an entity id stored on the map to a GRF file.
#define SLE_VAR(base, variable, type)
Storage of a variable in every version of a savegame.
Definition: saveload.h:296

Save and load the mapping between a spec and the NewGRF it came from.

Definition at line 21 of file newgrf_sl.cpp.