WaterPlaneType.SplashItem[] GetSplashItemsByType( WaterPlaneType.SplashTypes splashType )
{
if( splashItemsCache == null )
splashItemsCache = new Dictionary<WaterPlaneType.SplashTypes, WaterPlaneType.SplashItem[]>();
WaterPlaneType.SplashItem[] items;
if( !splashItemsCache.TryGetValue( splashType, out items ) )
{
items = Type.Splashes.FindAll( delegate( WaterPlaneType.SplashItem item )
{
return item.SplashType == splashType;
} ).ToArray();
splashItemsCache.Add( splashType, items );
}
return items;
}