From 23511b477baa93d38693ed91ec0c81559b5a88d7 Mon Sep 17 00:00:00 2001 From: aleksav013 Date: Sun, 30 May 2021 17:37:10 +0200 Subject: Font segfaulting --- main.cpp | 195 ++++++++++++++++++++++++++++++++++----------------------------- 1 file changed, 105 insertions(+), 90 deletions(-) (limited to 'main.cpp') diff --git a/main.cpp b/main.cpp index 180edc2..2706ebe 100644 --- a/main.cpp +++ b/main.cpp @@ -115,9 +115,10 @@ void Enemy2::izracunajpoz(float igracx,float igracy,float dt) } class Enemy3:public Entity { + private: + float vx,vy; public: static float time; - float vx,vy; Enemy3():Entity() {} Enemy3(sf::Vector2f pozicija,sf::Vector2f velicina,sf::Color boja); void izracunajpoz(float dt); @@ -175,11 +176,10 @@ class Game std::vector pow; int visina,sirina; - sf::RenderWindow prozor; + sf::RenderWindow *prozor; sf::CircleShape krug; sf::RectangleShape health,healthblank,stomp,stompblank; - sf::Text healthtext,stomptext,fps,score; void events(); @@ -201,7 +201,8 @@ class Game void initent(); void initwin(); public: - Game(); + Game() {} + Game(sf::RenderWindow *glprozor); void loop(); }; void Game::initshapes() @@ -228,24 +229,23 @@ void Game::initui() { if(!font.loadFromFile("assets/fonts/LiberationMono-Regular.ttf")) { - std::cout<<"Font not found\n"; + std::cerr<<"Font not found\n"; } - - healthtext.setFont(font); + //healthtext.setFont(font); healthtext.setString("Health"); healthtext.setCharacterSize(24); healthtext.setFillColor(sf::Color::Black); - stomptext.setFont(font); + //stomptext.setFont(font); stomptext.setString("Stomp"); stomptext.setCharacterSize(24); stomptext.setPosition(0,50); stomptext.setFillColor(sf::Color::Black); - fps.setFont(font); + //fps.setFont(font); fps.setCharacterSize(24); fps.setFillColor(sf::Color::White); fps.setPosition(sirina*5.0/6,0); - score.setFont(font); + //score.setFont(font); score.setCharacterSize(24); score.setFillColor(sf::Color::White); score.setPosition(sirina*5.0/6,50); @@ -254,20 +254,20 @@ void Game::inittex() { if(!healthtex.loadFromFile("assets/images/healing.png")) { - std::cout<<"Texture not found\n"; + std::cerr<<"Texture not found\n"; } if(!neprijateljtex.loadFromFile("assets/images/nep.png")) { - std::cout<<"Texture not found\n"; + std::cerr<<"Texture not found\n"; } - for(size_t i=0;igetSize().y; + sirina=prozor->getSize().x; + prozor->setFramerateLimit(60); } -Game::Game() +Game::Game(sf::RenderWindow *glprozor) { + prozor=glprozor; initwin(); initent(); initshapes(); @@ -292,7 +292,7 @@ bool Game::gameover() { if(igrac.health<=0) { - prozor.close(); + prozor->close(); std::cout<<"\n\nGame over. Wanna try again?\n"; return 1; } @@ -313,28 +313,28 @@ void Game::stompmain() { igrac.stomptime=5; krug.setPosition(igrac.x,igrac.y); - for(size_t i=0;ipollEvent(evnt)) { switch(evnt.type) { case sf::Event::EventType::Closed: - prozor.close(); + prozor->close(); break; case sf::Event::EventType::Resized: - visina=prozor.getSize().y; - sirina=prozor.getSize().x; + visina=prozor->getSize().y; + sirina=prozor->getSize().x; std::cout<<"Nova velicina prozora je:"<4.6) prozor.draw(krug); - prozor.draw(igrac.telo); - for(size_t i=0;iclear(); + if(igrac.stomptime>4.6) prozor->draw(krug); + prozor->draw(igrac.telo); + for(size_t i=0;idraw(nep1.at(i).telo); + for(size_t i=0;idraw(nep2.at(i).telo); + for(size_t i=0;idraw(nep3.at(i).telo); + for(size_t i=0;idraw(pow.at(i).telo); - prozor.draw(healthblank); - prozor.draw(health); - prozor.draw(healthtext); - prozor.draw(stompblank); - prozor.draw(stomp); - prozor.draw(stomptext); - prozor.draw(fps); - prozor.draw(score); + prozor->draw(healthblank); + prozor->draw(health); + prozor->draw(healthtext); + prozor->draw(stompblank); + prozor->draw(stomp); + prozor->draw(stomptext); + prozor->draw(fps); + prozor->draw(score); - prozor.display(); + prozor->display(); } void Game::position() { igrac.telo.setPosition(igrac.x,igrac.y); - for(size_t i=0;i