Run Void *** when button is pressed

This bit of code looks as if it will detect when the button is pressed:

  currentButton = debounce(lastButton);
  if (lastButton == LOW && currentButton == HIGH)
  {  
      // code here executes once when the button changes state
  }
  lastButton = currentButton;

Define a global variable that records which game you are playing. For the sake of argument, let's suppose you called it currentGame. Since you only have two games currently, it could be a boolean variable. If you plan to have more games in future, it might make sense for it to be an integer (although currently you would only need values 0 and 1). When the button press occurs, change currentGame. You might also want to reset any global variables holding the state of that game so that you effectively start a new game - but that's up to you.

Later on in loop() you test the value of currentGame and call the corresponding function. For two games, a simple IF statement would be all you need. If you had more than two games to choose from it would make more sense to use a SWITCH statement instead of the IF.