so I cant have it constantly checking the sensor whilst it is fading the leds?
Yes you can, it is all in the blink without delay example.
So do you suggest I break the cycles to become much smaller, as in have more intervals? so it checks more often?
Ditch the idea of using delay and fading by using a loop. The whole thing becomes on continuous loop saying
{
what time is it now?
is it time to check the sensor -> ping it
is it time to look at the result of the ping
is it time to change the LED brightness a notch
}