summaryrefslogtreecommitdiff
path: root/src/newgrf_railtype.cpp
diff options
context:
space:
mode:
authorfrosch <frosch@openttd.org>2015-07-26 12:25:37 +0000
committerfrosch <frosch@openttd.org>2015-07-26 12:25:37 +0000
commit574b981e33e6e64e694bb1904a9dd70a2c392ad8 (patch)
tree057bfdcc4d8bb01ac55a58572735c1d321800a8f /src/newgrf_railtype.cpp
parenta81968d0f35a58c04a445a35a02f1ce06837d5dd (diff)
downloadopenttd-574b981e33e6e64e694bb1904a9dd70a2c392ad8.tar.xz
(svn r27342) -Add: Optionally return the number of sprites in the spriteset from GetCustomRailSprite.
Diffstat (limited to 'src/newgrf_railtype.cpp')
-rw-r--r--src/newgrf_railtype.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/newgrf_railtype.cpp b/src/newgrf_railtype.cpp
index 872a3a7f6..8a074db97 100644
--- a/src/newgrf_railtype.cpp
+++ b/src/newgrf_railtype.cpp
@@ -100,9 +100,10 @@ RailTypeResolverObject::RailTypeResolverObject(const RailtypeInfo *rti, TileInde
* @param tile The tile to get the sprite for.
* @param rtsg The type of sprite to draw.
* @param content Where are we drawing the tile?
+ * @param [out] num_results If not NULL, return the number of sprites in the spriteset.
* @return The sprite to draw.
*/
-SpriteID GetCustomRailSprite(const RailtypeInfo *rti, TileIndex tile, RailTypeSpriteGroup rtsg, TileContext context)
+SpriteID GetCustomRailSprite(const RailtypeInfo *rti, TileIndex tile, RailTypeSpriteGroup rtsg, TileContext context, uint *num_results)
{
assert(rtsg < RTSG_END);
@@ -112,6 +113,8 @@ SpriteID GetCustomRailSprite(const RailtypeInfo *rti, TileIndex tile, RailTypeSp
const SpriteGroup *group = object.Resolve();
if (group == NULL || group->GetNumResults() == 0) return 0;
+ if (num_results) *num_results = group->GetNumResults();
+
return group->GetResult();
}