summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbelugas <belugas@openttd.org>2007-10-04 00:59:52 +0000
committerbelugas <belugas@openttd.org>2007-10-04 00:59:52 +0000
commitcfb9cb8cec0b4ba71c509e2fd584f5532ed085ea (patch)
treeb40e46882b94545091f6a69ddbaf5927a00b8757
parent23eed48a92d29f6193f6d20e873d0bfdb338e014 (diff)
downloadopenttd-cfb9cb8cec0b4ba71c509e2fd584f5532ed085ea.tar.xz
(svn r11198) -Fix: When industry override is not possible because it is already been overridden, mark the new candidate as not being an override
-rw-r--r--src/newgrf_commons.cpp3
-rw-r--r--src/newgrf_commons.h2
2 files changed, 3 insertions, 2 deletions
diff --git a/src/newgrf_commons.cpp b/src/newgrf_commons.cpp
index 173997d99..68269c643 100644
--- a/src/newgrf_commons.cpp
+++ b/src/newgrf_commons.cpp
@@ -188,7 +188,7 @@ uint16 IndustryOverrideManager::AddEntityID(byte grf_local_id, uint32 grfid, byt
* checking what is available
* @param inds Industryspec that comes from the grf decoding process
*/
-void IndustryOverrideManager::SetEntitySpec(const IndustrySpec *inds)
+void IndustryOverrideManager::SetEntitySpec(IndustrySpec *inds)
{
/* First step : We need to find if this industry is already specified in the savegame data */
IndustryType ind_id = this->GetID(inds->grf_prop.local_id, inds->grf_prop.grffile->grfid);
@@ -206,6 +206,7 @@ void IndustryOverrideManager::SetEntitySpec(const IndustrySpec *inds)
* Or it is a simple substitute.
* In both case, we need to find a free available slot */
ind_id = this->AddEntityID(inds->grf_prop.local_id, inds->grf_prop.grffile->grfid, inds->grf_prop.subst_id);
+ inds->grf_prop.override = invalid_ID; // make sure it will not be detected as overriden
}
}
diff --git a/src/newgrf_commons.h b/src/newgrf_commons.h
index 51ebd93b8..a8e3eabf9 100644
--- a/src/newgrf_commons.h
+++ b/src/newgrf_commons.h
@@ -71,7 +71,7 @@ public:
OverrideManagerBase(offset, maximum, invalid) {}
virtual uint16 AddEntityID(byte grf_local_id, uint32 grfid, byte substitute_id);
- void SetEntitySpec(const IndustrySpec *inds);
+ void SetEntitySpec(IndustrySpec *inds);
};