Пример #1
0
//a little bit ugly
string fetchNameFromUser()
{	
	string resultString= "You have ended the game with score:" + std::to_string(score);
	
	Text alphabet [26];

	Text resultText;
	setText(resultText, font, Color::White, 35, resultString, { 200,220 });

	Text enterNameText;
	setText(enterNameText, font, Color::White, 30, "Please Enter Your Name", { 340,300 });

	Text gameOverText;
	setText(gameOverText, font, Color::Red, 40, "GAME OVER", { 370,150 });

	pair <unsigned char, unsigned char> myPair = { 0,0 };
	char chosenLetter = 'A';
	string userName = "******";

	Text providedNameText;

	RectangleShape marker;
	while (window.waitEvent(myEvent))
	{
		window.clear(Color::Black);
		setText(providedNameText, font, Color::White, 30, userName, { 460,360 });
		drawTextes(gameOverText, enterNameText, providedNameText, scoreText,resultText);

		int j = 1;
		int k = 0;

		for (unsigned char i = 0; i<26; ++i)
		{	
			if (0 == i % 13) 
			{
					++j; k=0;
			}
			++k;
			char letter[2] = "A";
			letter[0] = letter[0] + i;
	
			setText(alphabet[i], font, Color::White, 20 , letter , {350.0f+20*k,380.0f+20*j});
			window.draw(alphabet[i]);
		}

		setMarker(marker, alphabet[chosenLetter - 65].getPosition());
		window.draw(marker);
	
		static int i = 0;
		gameOverInput(myEvent, userName, chosenLetter, myPair, i);

		window.display();

		if (3 == i)
			return userName;
	}
}