(svn r18717) -Codechange: use TileArea in industry instead of three separate variables. Also make use of TileArea functions for determining the 'width' and 'height' of an industry.
This commit is contained in:
@@ -17,10 +17,10 @@
|
||||
#include "saveload.h"
|
||||
|
||||
static const SaveLoad _industry_desc[] = {
|
||||
SLE_CONDVAR(Industry, xy, SLE_FILE_U16 | SLE_VAR_U32, 0, 5),
|
||||
SLE_CONDVAR(Industry, xy, SLE_UINT32, 6, SL_MAX_VERSION),
|
||||
SLE_VAR(Industry, width, SLE_UINT8),
|
||||
SLE_VAR(Industry, height, SLE_UINT8),
|
||||
SLE_CONDVAR(Industry, location.tile, SLE_FILE_U16 | SLE_VAR_U32, 0, 5),
|
||||
SLE_CONDVAR(Industry, location.tile, SLE_UINT32, 6, SL_MAX_VERSION),
|
||||
SLE_VAR(Industry, location.w, SLE_UINT8),
|
||||
SLE_VAR(Industry, location.h, SLE_UINT8),
|
||||
SLE_REF(Industry, town, REF_TOWN),
|
||||
SLE_CONDNULL( 2, 0, 60), ///< used to be industry's produced_cargo
|
||||
SLE_CONDARR(Industry, produced_cargo, SLE_UINT8, 2, 78, SL_MAX_VERSION),
|
||||
|
@@ -776,10 +776,10 @@ static bool LoadOldStation(LoadgameState *ls, int num)
|
||||
}
|
||||
|
||||
static const OldChunks industry_chunk[] = {
|
||||
OCL_SVAR( OC_TILE, Industry, xy ),
|
||||
OCL_SVAR( OC_TILE, Industry, location.tile ),
|
||||
OCL_VAR ( OC_UINT32, 1, &_old_town_index ),
|
||||
OCL_SVAR( OC_UINT8, Industry, width ),
|
||||
OCL_SVAR( OC_UINT8, Industry, height ),
|
||||
OCL_SVAR( OC_UINT8, Industry, location.w ),
|
||||
OCL_SVAR( OC_UINT8, Industry, location.h ),
|
||||
OCL_NULL( 2 ), ///< used to be industry's produced_cargo
|
||||
|
||||
OCL_SVAR( OC_TTD | OC_UINT16, Industry, produced_cargo_waiting[0] ),
|
||||
@@ -825,7 +825,7 @@ static bool LoadOldIndustry(LoadgameState *ls, int num)
|
||||
Industry *i = new (num) Industry();
|
||||
if (!LoadChunk(ls, i, industry_chunk)) return false;
|
||||
|
||||
if (i->xy != 0) {
|
||||
if (i->location.tile != 0) {
|
||||
i->town = Town::Get(RemapTownIndex(_old_town_index));
|
||||
|
||||
if (_savegame_type == SGT_TTO) {
|
||||
|
Reference in New Issue
Block a user