Mercurial > hg > openttd
changeset 18875:b09d72b6f543 draft
(svn r23724) -Codechange: split of the check to see if ambient sounds are enabled to a header file allowing compilers to inline that check
author | yexo <yexo@openttd.org> |
---|---|
date | Tue, 03 Jan 2012 00:45:22 +0000 |
parents | cbdefaa36526 |
children | f07039e124aa |
files | src/clear_cmd.cpp src/newgrf_generic.cpp src/newgrf_generic.h src/tree_cmd.cpp src/water_cmd.cpp |
diffstat | 5 files changed, 13 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/src/clear_cmd.cpp +++ b/src/clear_cmd.cpp @@ -259,7 +259,7 @@ return; } } - AmbientSoundEffectCallback(tile); + AmbientSoundEffect(tile); switch (_settings_game.game_creation.landscape) { case LT_TROPIC: TileLoopClearDesert(tile); break;
--- a/src/newgrf_generic.cpp +++ b/src/newgrf_generic.cpp @@ -235,8 +235,6 @@ { assert(IsTileType(tile, MP_CLEAR) || IsTileType(tile, MP_TREES) || IsTileType(tile, MP_WATER)); - /* Only run callback if enabled. */ - if (!HasGrfMiscBit(GMB_AMBIENT_SOUND_CALLBACK)) return; /* Only run every 1/200-th time. */ uint32 r; // Save for later if (!Chance16R(1, 200, r)) return;
--- a/src/newgrf_generic.h +++ b/src/newgrf_generic.h @@ -51,6 +51,15 @@ void AddGenericCallback(uint8 feature, const GRFFile *file, const SpriteGroup *group); uint16 GetAiPurchaseCallbackResult(uint8 feature, CargoID cargo_type, uint8 default_selection, IndustryType src_industry, IndustryType dst_industry, uint8 distance, AIConstructionEvent event, uint8 count, uint8 station_size, const GRFFile **file); -void AmbientSoundEffectCallback(TileIndex tile); + +/** Play an ambient sound effect for an empty tile. */ +static inline void AmbientSoundEffect(TileIndex tile) +{ + /* Only run callback if enabled. */ + if (!HasGrfMiscBit(GMB_AMBIENT_SOUND_CALLBACK)) return; + + extern void AmbientSoundEffectCallback(TileIndex tile); + AmbientSoundEffectCallback(tile); +} #endif /* NEWGRF_GENERIC_H */