Changeset - r15759:b4a7f4cce7fb
[Not reviewed]
master
0 2 0
rubidium - 14 years ago 2010-08-10 23:31:43
rubidium@openttd.org
(svn r20443) -Codechange: more TileHash to a more generic location
2 files changed with 32 insertions and 31 deletions:
0 comments (0 inline, 0 general)
src/tile_map.h
Show inline comments
 
@@ -206,4 +206,35 @@ Slope GetTileSlope(TileIndex tile, uint 
 
uint GetTileZ(TileIndex tile);
 
uint GetTileMaxZ(TileIndex tile);
 

	
 
#endif /* TILE_TYPE_H */
 

	
 
/**
 
 * Calculate a hash value from a tile position
 
 *
 
 * @param x The X coordinate
 
 * @param y The Y coordinate
 
 * @return The hash of the tile
 
 */
 
static inline uint TileHash(uint x, uint y)
 
{
 
	uint hash = x >> 4;
 
	hash ^= x >> 6;
 
	hash ^= y >> 4;
 
	hash -= y >> 6;
 
	return hash;
 
}
 

	
 
/**
 
 * Get the last two bits of the TileHash
 
 *  from a tile position.
 
 *
 
 * @see TileHash()
 
 * @param x The X coordinate
 
 * @param y The Y coordinate
 
 * @return The last two bits from hash of the tile
 
 */
 
static inline uint TileHash2Bit(uint x, uint y)
 
{
 
	return GB(TileHash(x, y), 0, 2);
 
}
 

	
 
#endif /* TILE_MAP_H */
src/town.h
Show inline comments
 
@@ -233,36 +233,6 @@ extern const byte _town_action_costs[TAC
 
extern TownID _new_town_id;
 

	
 
/**
 
 * Calculate a hash value from a tile position
 
 *
 
 * @param x The X coordinate
 
 * @param y The Y coordinate
 
 * @return The hash of the tile
 
 */
 
static inline uint TileHash(uint x, uint y)
 
{
 
	uint hash = x >> 4;
 
	hash ^= x >> 6;
 
	hash ^= y >> 4;
 
	hash -= y >> 6;
 
	return hash;
 
}
 

	
 
/**
 
 * Get the last two bits of the TileHash
 
 *  from a tile position.
 
 *
 
 * @see TileHash()
 
 * @param x The X coordinate
 
 * @param y The Y coordinate
 
 * @return The last two bits from hash of the tile
 
 */
 
static inline uint TileHash2Bit(uint x, uint y)
 
{
 
	return GB(TileHash(x, y), 0, 2);
 
}
 

	
 
/**
 
 * Set the default name for a depot/waypoint
 
 * @tparam T The type/class to make a default name for
 
 * @param obj The object/instance we want to find the name for
0 comments (0 inline, 0 general)