private void AddNoise() { int cell = Grid.PosToCell(position); int val = effectExtents.x + effectExtents.width; int val2 = effectExtents.y + effectExtents.height; int x = effectExtents.x; int y = effectExtents.y; int x2 = 0; int y2 = 0; Grid.CellToXY(cell, out x2, out y2); val = Math.Min(val, Grid.WidthInCells); val2 = Math.Min(val2, Grid.HeightInCells); x = Math.Max(0, x); y = Math.Max(0, y); for (int i = y; i < val2; i++) { for (int j = x; j < val; j++) { if (Grid.VisibilityTest(x2, y2, j, i, false)) { int num = Grid.XYToCell(j, i); float dBForCell = GetDBForCell(num); if (dBForCell > 0f) { float num2 = AudioEventManager.DBToLoudness(dBForCell); Grid.Loudness[num] += num2; Pair <int, float> item = new Pair <int, float>(num, num2); decibels.Add(item); } } } } }