Python program for healthy schedule
Variable naming
Your variables should be named something more telling than breakcount , breakcount1 and breakcount2. I suggest breakcount_water (and _eyes , _physical) instead.
Simpler logic
Instead of two variables for each kind of break (6 total), you can do with just one variable for each, starting at the max, and subtract 1 for each break. Then, you're done when you reach zero.
That lets you do the same thing with half as many (3) variables to keep track of.
Don't repeat yourself
pygame.mixer.init()
pygame.mixer.music.load(&quot;water.mp3.mp3&quot;)
pygame.mixer.music.play(-1)

These three lines are identical each time you play music.
Create a function instead that takes the file name as input, and you can call play_music(&quot;water.mp3.mp3&quot;) which then executes these three lines in the function.
def play_music(filename):
    #the three lines from above

Stack abuse
You're calling the health() function from inside itself, which means you never let it exit properly and if you did this a few thousand (maybe more) times, the program would crash due to stack overflow.
Instead, you should use a while loop that checks for the condition to loop again, to start over without calling the function another time. That way, you can also initialise your variables at the start of the function (before the while-loop) and you don't need any global variables, since the function has access to them inside its own scope.