summaryrefslogtreecommitdiff
path: root/src/station_cmd.cpp
diff options
context:
space:
mode:
authorfrosch <frosch@openttd.org>2014-01-23 20:23:14 +0000
committerfrosch <frosch@openttd.org>2014-01-23 20:23:14 +0000
commit932dad7c8b24e5a1010126e1746034db3e9942e5 (patch)
tree5a60f40a1dd6e2c56b62e650ad1556766bebc543 /src/station_cmd.cpp
parent278b380d107044c5ba3486f4ad67e7ef89e17938 (diff)
downloadopenttd-932dad7c8b24e5a1010126e1746034db3e9942e5.tar.xz
(svn r26275) -Fix: If NewGRF provided the same station name for different industry types, stations would end up with same name. So also consider the provided name, not only the industry type.
Diffstat (limited to 'src/station_cmd.cpp')
-rw-r--r--src/station_cmd.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp
index 6ef602b83..c253679d9 100644
--- a/src/station_cmd.cpp
+++ b/src/station_cmd.cpp
@@ -247,6 +247,14 @@ static StringID GenerateStationName(Station *st, TileIndex tile, StationNaming n
if (s != st && s->town == t) {
if (s->indtype != IT_INVALID) {
indtypes[s->indtype] = true;
+ StringID name = GetIndustrySpec(s->indtype)->station_name;
+ if (name != STR_UNDEFINED) {
+ /* Filter for other industrytypes with the same name */
+ for (IndustryType it = 0; it < NUM_INDUSTRYTYPES; it++) {
+ const IndustrySpec *indsp = GetIndustrySpec(it);
+ if (indsp->enabled && indsp->station_name == name) indtypes[it] = true;
+ }
+ }
continue;
}
uint str = M(s->string_id);