(svn r14160) -Codechange: Move _railtype_cost_multipliers into the rail type information struct.

This commit is contained in:
2008-08-24 23:10:23 +00:00
parent 2f80a277eb
commit b45ced35ee
4 changed files with 31 additions and 26 deletions

View File

@@ -113,6 +113,11 @@ struct RailtypeInfo {
* Bit mask of rail type flags
*/
RailTypeFlags flags;
/**
* Cost multiplier for building this rail type
*/
uint8 cost_multiplier;
};
@@ -154,10 +159,6 @@ static inline bool HasPowerOnRail(RailType enginetype, RailType tiletype)
return HasBit(GetRailTypeInfo(enginetype)->powered_railtypes, tiletype);
}
extern int _railtype_cost_multiplier[RAILTYPE_END];
extern const int _default_railtype_cost_multiplier[RAILTYPE_END];
/**
* Returns the cost of building the specified railtype.
* @param railtype The railtype being built.
@@ -166,7 +167,7 @@ extern const int _default_railtype_cost_multiplier[RAILTYPE_END];
static inline Money RailBuildCost(RailType railtype)
{
assert(railtype < RAILTYPE_END);
return (_price.build_rail * _railtype_cost_multiplier[railtype]) >> 3;
return (_price.build_rail * GetRailTypeInfo(railtype)->cost_multiplier) >> 3;
}
/**