(svn r12513) -Codechange: rename OriginalTileRandomiser something more descriptive
--- a/src/newgrf_house.cpp Mon Mar 31 07:25:49 2008 +0000
+++ b/src/newgrf_house.cpp Mon Mar 31 15:10:24 2008 +0000
@@ -216,7 +216,7 @@
switch (variable) {
/* Construction stage. */
- case 0x40: return (IsTileType(tile, MP_HOUSE) ? GetHouseBuildingStage(tile) : 0) | OriginalTileRandomiser(TileX(tile), TileY(tile)) << 2;
+ case 0x40: return (IsTileType(tile, MP_HOUSE) ? GetHouseBuildingStage(tile) : 0) | TileHash2Bit(TileX(tile), TileY(tile)) << 2;
/* Building age. */
case 0x41: return Clamp(_cur_year - GetHouseConstructionYear(tile), 0, 0xFF);
@@ -340,7 +340,7 @@
pal = HasBit(callback, 14) ? GB(callback, 0, 8) + SPR_2CCMAP_BASE : callback;
}
} else {
- pal = hs->random_colour[OriginalTileRandomiser(ti->x, ti->y)] + PALETTE_RECOLOR_START;
+ pal = hs->random_colour[TileHash2Bit(ti->x, ti->y)] + PALETTE_RECOLOR_START;
}
}
} else {
--- a/src/town.h Mon Mar 31 07:25:49 2008 +0000
+++ b/src/town.h Mon Mar 31 15:10:24 2008 +0000
@@ -314,7 +314,7 @@
extern Town *_cleared_town;
extern int _cleared_town_rating;
-uint OriginalTileRandomiser(uint x, uint y);
+uint TileHash2Bit(uint x, uint y);
void ResetHouses();
void ClearTownHouse(Town *t, TileIndex tile);
--- a/src/town_cmd.cpp Mon Mar 31 07:25:49 2008 +0000
+++ b/src/town_cmd.cpp Mon Mar 31 15:10:24 2008 +0000
@@ -129,15 +129,21 @@
TownDrawHouseLift
};
-uint OriginalTileRandomiser(uint x, uint y)
+/**
+ * Calculate a hash value from a tile position
+ *
+ * @param x The X coordinate
+ * @param y The Y coordinate
+ * @return The hash of the tile
+ */
+uint TileHash2Bit(uint x, uint y)
{
- uint variant;
- variant = x >> 4;
- variant ^= x >> 6;
- variant ^= y >> 4;
- variant -= y >> 6;
- variant &= 3;
- return variant;
+ uint hash = x >> 4;
+ hash ^= x >> 6;
+ hash ^= y >> 4;
+ hash -= y >> 6;
+ hash &= 3;
+ return hash;
}
/**
@@ -175,7 +181,7 @@
}
/* Retrieve pointer to the draw town tile struct */
- dcts = &_town_draw_tile_data[house_id << 4 | OriginalTileRandomiser(ti->x, ti->y) << 2 | GetHouseBuildingStage(ti->tile)];
+ dcts = &_town_draw_tile_data[house_id << 4 | TileHash2Bit(ti->x, ti->y) << 2 | GetHouseBuildingStage(ti->tile)];
if (ti->tileh != SLOPE_FLAT) DrawFoundation(ti, FOUNDATION_LEVELED);