Multiple Delays Simultaneously.

BWD Principle?? whats that??

BlinkWithoutDelay

What should i put in void Delay(int n) function so that Arduino does not paralyze here??

You cannot simply replace delay() with some magic code that will not cause your program to stall. Instead you need to refactor your code.

When the start event occurs save the value from millis(). Now, on each pass through the loop() function check if required period of time has passed by comparing millis() now with the saved value. If the difference is greater than the required period then the 'delay' is over so act on it. If not go round loop() again checking for other elapsed periods in the same way and acting accordingly.