summaryrefslogtreecommitdiff
path: root/oldloader.c
diff options
context:
space:
mode:
authorcelestar <celestar@openttd.org>2005-01-29 19:41:44 +0000
committercelestar <celestar@openttd.org>2005-01-29 19:41:44 +0000
commit752b3f0dd614217d68f361e2d0b2cc599a37c860 (patch)
treefcefcecfa2ec7dd8e9178d5206788bd62dcf3c53 /oldloader.c
parent885fd2b15c1ae9a1422f82b8bcdd9d1a287c3aa6 (diff)
downloadopenttd-752b3f0dd614217d68f361e2d0b2cc599a37c860.tar.xz
(svn r1721) -Feature: It is now possible to build multiple road stations (up to 8) on
a single station. Thanks to: Truelight for the saveload code, Darkvater and Hackykid for network testing and Tron for proof-reading 1500 lines of diff.
Diffstat (limited to 'oldloader.c')
-rw-r--r--oldloader.c18
1 files changed, 14 insertions, 4 deletions
diff --git a/oldloader.c b/oldloader.c
index 07a4dde3f..4862c14a2 100644
--- a/oldloader.c
+++ b/oldloader.c
@@ -711,8 +711,16 @@ static void FixStation(OldStation *o, int num)
s->xy = o->xy;
s->town = REMAP_TOWN_PTR(o->town);
- s->bus_tile = o->bus_tile;
- s->lorry_tile = o->lorry_tile;
+ if (o->bus_tile != 0) {
+ s->bus_stops = GetFirstFreeRoadStop();
+ s->bus_stops->xy = o->bus_tile;
+ } else
+ s->bus_stops = NULL;
+ if (o->lorry_tile != 0) {
+ s->truck_stops = GetFirstFreeRoadStop();
+ s->truck_stops->xy = o->lorry_tile;
+ } else
+ s->truck_stops = 0;
s->train_tile = o->train_tile;
s->airport_tile = o->airport_tile;
s->dock_tile = o->dock_tile;
@@ -734,8 +742,10 @@ static void FixStation(OldStation *o, int num)
s->owner = o->owner;
s->facilities = o->facilities;
s->airport_type = o->airport_type;
- s->truck_stop_status = o->truck_stop_status;
- s->bus_stop_status = o->bus_stop_status;
+ if (s->truck_stops != NULL)
+ s->truck_stops->status = o->truck_stop_status;
+ if (s->bus_stops != NULL)
+ s->bus_stops->status = o->bus_stop_status;
s->blocked_months_obsolete = o->blocked_months_obsolete;
s->airport_flags = o->airport_flags;
s->last_vehicle = o->last_vehicle;