(svn r6047) -Codechange: FOR_ALL now _only_ loops valid items, and skips invalid ones
-Codechange: use IsValidXXX where ever possible Note: both changes to prepare for new pool system, which needs those changes. For every pool there are 2 ugly lines, which will be removed when done implementing new pool system. Based on FS#13 by blathijs, partly implemented.
This commit is contained in:
@@ -74,9 +74,9 @@ extern MemoryPool _industry_pool;
|
||||
/**
|
||||
* Check if an Industry really exists.
|
||||
*/
|
||||
static inline bool IsValidIndustry(Industry* industry)
|
||||
static inline bool IsValidIndustry(const Industry *industry)
|
||||
{
|
||||
return industry->xy != 0; /* XXX: Replace by INVALID_TILE someday */
|
||||
return industry->xy != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -95,7 +95,7 @@ static inline uint16 GetIndustryPoolSize(void)
|
||||
return _industry_pool.total_items;
|
||||
}
|
||||
|
||||
#define FOR_ALL_INDUSTRIES_FROM(i, start) for (i = GetIndustry(start); i != NULL; i = (i->index + 1 < GetIndustryPoolSize()) ? GetIndustry(i->index + 1) : NULL)
|
||||
#define FOR_ALL_INDUSTRIES_FROM(i, start) for (i = GetIndustry(start); i != NULL; i = (i->index + 1 < GetIndustryPoolSize()) ? GetIndustry(i->index + 1) : NULL) if (IsValidIndustry(i))
|
||||
#define FOR_ALL_INDUSTRIES(i) FOR_ALL_INDUSTRIES_FROM(i, 0)
|
||||
|
||||
VARDEF int _total_industries; // For the AI: the amount of industries active
|
||||
|
||||
Reference in New Issue
Block a user