Merge branch 'master' into jgrpp
# Conflicts: # config.lib # projects/openttd_vs140.vcxproj # projects/openttd_vs140.vcxproj.filters # projects/openttd_vs141.vcxproj # projects/openttd_vs141.vcxproj.filters # projects/openttd_vs142.vcxproj # projects/openttd_vs142.vcxproj.filters # src/aircraft_cmd.cpp # src/base_station_base.h # src/core/pool_type.hpp # src/disaster_vehicle.cpp # src/economy.cpp # src/engine.cpp # src/group.h # src/group_cmd.cpp # src/group_gui.cpp # src/lang/english.txt # src/lang/german.txt # src/linkgraph/linkgraph_gui.cpp # src/network/network_command.cpp # src/network/network_server.cpp # src/openttd.cpp # src/order_cmd.cpp # src/road_cmd.cpp # src/saveload/afterload.cpp # src/saveload/cargopacket_sl.cpp # src/saveload/linkgraph_sl.cpp # src/saveload/order_sl.cpp # src/saveload/station_sl.cpp # src/saveload/town_sl.cpp # src/saveload/vehicle_sl.cpp # src/screenshot.cpp # src/screenshot.h # src/settings_gui.cpp # src/settings_type.h # src/smallmap_gui.cpp # src/station.cpp # src/station_cmd.cpp # src/table/settings.ini # src/toolbar_gui.cpp # src/town_cmd.cpp # src/train.h # src/train_cmd.cpp # src/train_gui.cpp # src/vehicle.cpp # src/vehicle_base.h # src/vehiclelist.cpp # src/window_type.h
This commit is contained in:
@@ -58,9 +58,7 @@ const SaveLoad* GTD() {
|
||||
|
||||
static void Save_TMPLS()
|
||||
{
|
||||
TemplateVehicle *tv;
|
||||
|
||||
FOR_ALL_TEMPLATES(tv) {
|
||||
for (TemplateVehicle *tv : TemplateVehicle::Iterate()) {
|
||||
SlSetArrayIndex(tv->index);
|
||||
SlObject(tv, GTD());
|
||||
}
|
||||
@@ -78,22 +76,19 @@ static void Load_TMPLS()
|
||||
|
||||
static void Ptrs_TMPLS()
|
||||
{
|
||||
TemplateVehicle *tv;
|
||||
FOR_ALL_TEMPLATES(tv) {
|
||||
for (TemplateVehicle *tv : TemplateVehicle::Iterate()) {
|
||||
SlObject(tv, GTD());
|
||||
}
|
||||
}
|
||||
|
||||
void AfterLoadTemplateVehicles()
|
||||
{
|
||||
TemplateVehicle *tv;
|
||||
|
||||
FOR_ALL_TEMPLATES(tv) {
|
||||
for (TemplateVehicle *tv : TemplateVehicle::Iterate()) {
|
||||
/* Reinstate the previous pointer */
|
||||
if (tv->next != nullptr) tv->next->previous = tv;
|
||||
tv->first = nullptr;
|
||||
}
|
||||
FOR_ALL_TEMPLATES(tv) {
|
||||
for (TemplateVehicle *tv : TemplateVehicle::Iterate()) {
|
||||
/* Fill the first pointers */
|
||||
if (tv->previous == nullptr) {
|
||||
for (TemplateVehicle *u = tv; u != nullptr; u = u->Next()) {
|
||||
@@ -105,13 +100,11 @@ void AfterLoadTemplateVehicles()
|
||||
|
||||
void AfterLoadTemplateVehiclesUpdateImage()
|
||||
{
|
||||
TemplateVehicle *tv;
|
||||
|
||||
SavedRandomSeeds saved_seeds;
|
||||
SaveRandomSeeds(&saved_seeds);
|
||||
|
||||
if (!SlXvIsFeaturePresent(XSLFI_TEMPLATE_REPLACEMENT, 3)) {
|
||||
FOR_ALL_TEMPLATES(tv) {
|
||||
for (TemplateVehicle *tv : TemplateVehicle::Iterate()) {
|
||||
if (tv->Prev() == nullptr && !Company::IsValidID(tv->owner)) {
|
||||
// clean up leftover template vehicles which no longer have a valid owner
|
||||
delete tv;
|
||||
@@ -119,7 +112,7 @@ void AfterLoadTemplateVehiclesUpdateImage()
|
||||
}
|
||||
}
|
||||
|
||||
FOR_ALL_TEMPLATES(tv) {
|
||||
for (TemplateVehicle *tv : TemplateVehicle::Iterate()) {
|
||||
if (tv->Prev() == nullptr) {
|
||||
Backup<CompanyID> cur_company(_current_company, tv->owner, FILE_LINE);
|
||||
StringID err;
|
||||
|
||||
Reference in New Issue
Block a user