(svn r12299) [NoAI] -Fix: don't assume any length of produced_cargo and accepts_cargo noai
authortruebrain
Wed, 27 Feb 2008 23:15:46 +0000
branchnoai
changeset 9795 679ba7cd8426
parent 9794 5d866d7cb991
child 9796 83d54622190c
(svn r12299) [NoAI] -Fix: don't assume any length of produced_cargo and accepts_cargo
src/ai/api/ai_industry.cpp
--- a/src/ai/api/ai_industry.cpp	Wed Feb 27 23:06:43 2008 +0000
+++ b/src/ai/api/ai_industry.cpp	Wed Feb 27 23:15:46 2008 +0000
@@ -43,8 +43,9 @@
 	const Industry *i = ::GetIndustry(industry_id);
 	const IndustrySpec *indsp = ::GetIndustrySpec(i->type);
 
-	if (indsp->produced_cargo[0] == cargo_id) return i->production_rate[0];
-	if (indsp->produced_cargo[1] == cargo_id) return i->production_rate[1];
+	for (byte j = 0; j < lengthof(indsp->produced_cargo); j++)
+		if (indsp->produced_cargo[j] == cargo_id) return i->production_rate[j];
+
 	return -1;
 }
 
@@ -56,9 +57,8 @@
 	const Industry *i = ::GetIndustry(industry_id);
 	const IndustrySpec *indsp = ::GetIndustrySpec(i->type);
 
-	if (indsp->accepts_cargo[0] == cargo_id) return true;
-	if (indsp->accepts_cargo[1] == cargo_id) return true;
-	if (indsp->accepts_cargo[2] == cargo_id) return true;
+	for (byte j = 0; j < lengthof(indsp->accepts_cargo); j++)
+		if (indsp->accepts_cargo[j] == cargo_id) return true;
 
 	return false;
 }