How do i get my if to repeat untill another if value is entered.

I see what you are saying about the delays but that is not really the issue

If you think that the delays are not the issue, you really don't understand the problem.
You rely on one analogRead, but that only occurs when one cycle of whatever animation is current has completed.