public static void gameOn() {
		
		int numOfPlayers = Integer.parseInt(JOptionPane.showInputDialog("Number of players?")), 
		playerTurn = 0;
		
		Player currentPlayer;
		Deck selectedCard;
		ArrayList<Deck> currentPlayerCards;
		
		String resultMessage = "", catMessage = "";
		
		createPlayers(numOfPlayers);

		scarecrowsOnDeck = true;
		while (scarecrowsOnDeck) {
			
			currentPlayer = players.get(playerTurn);
			
			// Result message

			resultMessage = "There are " + deck.size() + " cards on the deck.\n\nScarecrow cards found: " + scarecrowCounter + ".\n\n";
			
			resultMessage += "Player's turn: " + currentPlayer.getName().toUpperCase() + "\n\nRESULTS TABLE:\n";
			
			for (int i = 0; i < players.size(); i++) {
				
			resultMessage += players.get(i).getName().toUpperCase() + " has: " + players.get(i).getNumberOfBirdCards() + " Bird cards.\n";
			}

			selectedCard = deck.remove(deck.size() - 1);
			
			resultMessage += "\n" + catMessage;

			JOptionPane.showMessageDialog(null, resultMessage);

			catMessage = "";

			if (selectedCard.getKind() == Deck.KindOfCard.BirdCard) {
				currentPlayer.addCard(selectedCard);
			} else if (selectedCard.getKind() == Deck.KindOfCard.ScarecrowCard) {
				scarecrowCounter++;
				if (scarecrowCounter == 6) {
					scarecrowsOnDeck = false;
				}
			} else {
				catMessage = "A cat has scared all of your birds " + currentPlayer.getName().toUpperCase() + ".";
				deck.add(selectedCard);
				currentPlayerCards = currentPlayer.getCards();
				for (Deck card : currentPlayerCards) {
					deck.add(card);
				}
				currentPlayer.clearPlayerCards();
				shuffle();
			}
			playerTurn++;
			if (playerTurn > numOfPlayers - 1) {
				playerTurn = 0;
			}
			
		} gameOver();
		
	}