private CachedTileTemperatureData RetrieveCachedData(int tile)
 {
     if (cache[tile] != null)
     {
         return(cache[tile]);
     }
     cache[tile] = new CachedTileTemperatureData(tile);
     usedSlots.Add(tile);
     return(cache[tile]);
 }
示例#2
0
        private static CachedTileTemperatureData RetrieveCachedData2(TileTemperaturesComp __instance, int tile)
        {
            if (cache[tile] != null)
            {
                return(cache[tile]);
            }

            cache[tile] = new CachedTileTemperatureData(tile);
            usedSlots[(Interlocked.Increment(ref endIndex) - 1) % tileCount] = tile;
            return(cache[tile]);
        }