Merge branch 'master' into jgrpp

# Conflicts:
#	src/clear_cmd.cpp
#	src/main_gui.cpp
#	src/saveload/newgrf_sl.cpp
#	src/water_cmd.cpp
This commit is contained in:
Jonathan G Rennison
2023-01-26 22:32:08 +00:00
41 changed files with 263 additions and 179 deletions

View File

@@ -30,11 +30,11 @@ static const SaveLoad _newgrf_mapping_desc[] = {
void Save_NewGRFMapping(const OverrideManagerBase &mapping)
{
for (uint i = 0; i < mapping.GetMaxMapping(); i++) {
if (mapping.mapping_ID[i].grfid == 0 &&
mapping.mapping_ID[i].entity_id == 0) continue;
if (mapping.mappings[i].grfid == 0 &&
mapping.mappings[i].entity_id == 0) continue;
SlSetArrayIndex(i);
SlSetLength(4 + 1 + 1);
SlObjectSaveFiltered(&mapping.mapping_ID[i], _newgrf_mapping_desc); // _newgrf_mapping_desc has no conditionals
SlObjectSaveFiltered(const_cast<EntityIDMapping *>(&mapping.mappings[i]), _newgrf_mapping_desc); // _newgrf_mapping_desc has no conditionals
}
}
@@ -53,7 +53,7 @@ void Load_NewGRFMapping(OverrideManagerBase &mapping)
int index;
while ((index = SlIterateArray()) != -1) {
if (unlikely((uint)index >= max_id)) SlErrorCorrupt("Too many NewGRF entity mappings");
SlObjectLoadFiltered(&mapping.mapping_ID[index], _newgrf_mapping_desc); // _newgrf_mapping_desc has no conditionals
SlObjectLoadFiltered(&mapping.mappings[index], _newgrf_mapping_desc); // _newgrf_mapping_desc has no conditionals
}
}

View File

@@ -34,10 +34,10 @@ void NewGRFMappingChunkHandler::Save() const
SlTableHeader(_newgrf_mapping_desc);
for (uint i = 0; i < this->mapping.GetMaxMapping(); i++) {
if (this->mapping.mapping_ID[i].grfid == 0 &&
this->mapping.mapping_ID[i].entity_id == 0) continue;
if (this->mapping.mappings[i].grfid == 0 &&
this->mapping.mappings[i].entity_id == 0) continue;
SlSetArrayIndex(i);
SlObject(&this->mapping.mapping_ID[i], _newgrf_mapping_desc);
SlObject(&this->mapping.mappings[i], _newgrf_mapping_desc);
}
}
@@ -57,7 +57,7 @@ void NewGRFMappingChunkHandler::Load() const
int index;
while ((index = SlIterateArray()) != -1) {
if ((uint)index >= max_id) SlErrorCorrupt("Too many NewGRF entity mappings");
SlObject(&this->mapping.mapping_ID[index], slt);
SlObject(&this->mapping.mappings[index], slt);
}
}