aboutsummaryrefslogtreecommitdiff
path: root/main.cpp
diff options
context:
space:
mode:
authoraleksav013 <aleksav013@gmail.com>2021-05-20 19:43:53 +0200
committeraleksav013 <aleksav013@gmail.com>2021-05-20 19:43:53 +0200
commitca919785fbc94b4c4aa29efd9649d89a8c266f22 (patch)
treef1ec36930fd40322eff411736c90d97d06955404 /main.cpp
parent6df5ab82ba8b59ccada491f05c285551c5dd2c2e (diff)
Initial commit
Diffstat (limited to 'main.cpp')
-rw-r--r--main.cpp83
1 files changed, 83 insertions, 0 deletions
diff --git a/main.cpp b/main.cpp
new file mode 100644
index 0000000..4614500
--- /dev/null
+++ b/main.cpp
@@ -0,0 +1,83 @@
+#include<iostream>
+#include<SFML/Graphics.hpp>
+class Player
+{
+ public:
+ float x,y;
+ sf::RectangleShape telo;
+ Player();
+};
+Player::Player()
+{
+ telo.setSize(sf::Vector2f(100.0f,100.0f));
+ telo.setOrigin(sf::Vector2f(telo.getSize().x/2,telo.getSize().y/2));
+ x=y=0;
+}
+class Game
+{
+ Player igrac;
+ sf::RenderWindow prozor;
+ public:
+ Game();
+ void loop();
+ void events();
+ void keyboard();
+ void run();
+ void draw();
+};
+Game::Game()
+{
+ prozor.create(sf::VideoMode(512,512),"RPG igra");
+ igrac.x=(float)prozor.getSize().x/2;
+ igrac.y=(float)prozor.getSize().y/2;
+}
+void Game::keyboard()
+{
+ float dist=10.0;
+ if(sf::Keyboard::isKeyPressed(sf::Keyboard::W)) igrac.y-=dist;
+ if(sf::Keyboard::isKeyPressed(sf::Keyboard::A)) igrac.x-=dist;
+ if(sf::Keyboard::isKeyPressed(sf::Keyboard::S)) igrac.y+=dist;
+ if(sf::Keyboard::isKeyPressed(sf::Keyboard::D)) igrac.x+=dist;
+}
+void Game::events()
+{
+ sf::Event evnt;
+ while(prozor.pollEvent(evnt))
+ {
+ switch(evnt.type)
+ {
+ case sf::Event::EventType::Closed:
+ prozor.close();
+ break;
+ case sf::Event::EventType::Resized:
+ std::cout<<"Nova velicina prozora je:"<<prozor.getSize().x<<' '<<prozor.getSize().x<<std::endl;
+ break;
+ }
+ }
+ keyboard();
+}
+void Game::draw()
+{
+ prozor.clear();
+ prozor.draw(igrac.telo);
+ prozor.display();
+}
+void Game::run()
+{
+ igrac.telo.setPosition(igrac.x,igrac.y);
+}
+void Game::loop()
+{
+ while(prozor.isOpen())
+ {
+ events();
+ run();
+ draw();
+ }
+}
+int main()
+{
+ Game igra;
+ igra.loop();
+ return 0;
+}