Moved render window into GameState

This commit is contained in:
TriantaTV 2022-07-29 16:27:18 -05:00
parent 19b91b78d2
commit f64577d2cd
3 changed files with 21 additions and 32 deletions

View File

@ -5,20 +5,16 @@
GameState::GameState()
{
videoSizeHorizontal = 1024;
videoSizeVertical = 725;
// sf::Vector2u newVideoSize(videoSizeHorizontal, videoSizeVertical);
// window.setSize(newVideoSize);
// window.setTitle("SnakePlusPlus");
sf::VideoMode tempVideoMode(1024, 725);
gameVideoMode = tempVideoMode;
sf::RenderWindow gameWindow(gameVideoMode, "SnakePlusPlus");
return;
}
GameState::GameState(int newHorizontal, int newVertical)
{
videoSizeHorizontal = newHorizontal;
videoSizeVertical = newVertical;
// sf::Vector2u newVideoSize(videoSizeHorizontal, videoSizeVertical);
// window.setSize(newVideoSize);
// window.setTitle("SnakePlusPlus");
sf::VideoMode tempVideoMode(newHorizontal, newVertical);
gameVideoMode = tempVideoMode;
sf::RenderWindow tempWindow(gameVideoMode, "SnakePlusPlus");
return;
}

View File

@ -6,9 +6,12 @@ class GameState
{
private:
public:
unsigned int videoSizeHorizontal;
unsigned int videoSizeVertical;
// sf::RenderWindow window;
sf::VideoMode gameVideoMode;
sf::RenderWindow gameWindow;
/*
gameGridHorizontal = (videoSizeHorizontal // 25) * 25;
gameGridVertical = (videoSizeVertical // 25) * 25;
*/
GameState();
GameState(int newHorizontal, int newVertical);
// sf::Vector2f GetGameBoundaries();

View File

@ -7,34 +7,24 @@
int main()
{
// int videoSizeHorizontal, videoSizeVertical;
// videoSizeHorizontal = 1024;
// videoSizeVertical = 725;
/*
gameGridHorizontal = (videoSizeHorizontal // 25) * 25;
gameGridVertical = (videoSizeVertical // 25) * 25;
*/
// GameState newGame(1200, 1000);
GameState newGame;
sf::RenderWindow window(sf::VideoMode(newGame.videoSizeHorizontal, newGame.videoSizeVertical), "SnakePlusPlus");
// window = newGame.window;
newGame.gameWindow.create(newGame.gameVideoMode, "SnakePlusPlus");
sf::RenderWindow *window = &newGame.gameWindow;
sf::Time delay = sf::milliseconds(25);
int snakeDirection = 0;
Snake Player(sf::Vector2f(25,25));
sf::RectangleShape snakeHead(sf::Vector2f(25,25));
sf::RectangleShape snakeFood(sf::Vector2f(25,25));
snakeFood.setFillColor(sf::Color::Red);
snakeFood.setPosition(25,25);
while (window.isOpen())
while (window->isOpen())
{
sf::Event event;
while (window.pollEvent(event))
while (window->pollEvent(event))
{
if ((event.type == sf::Event::Closed) || (sf::Keyboard::isKeyPressed(sf::Keyboard::Escape)))
window.close();
window->close();
}
if (sf::Keyboard::isKeyPressed(sf::Keyboard::Left))
snakeDirection = 1;
@ -45,10 +35,10 @@ int main()
if (sf::Keyboard::isKeyPressed(sf::Keyboard::Right))
snakeDirection = 4;
Player.MoveSnake(snakeFood);
window.clear();
window.draw(snakeFood);
Player.DisplaySnake(window);
window.display();
window->clear();
window->draw(snakeFood);
Player.DisplaySnake(*window);
window->display();
sf::sleep(delay);
}
}