Działający obiekt pionka + utworzenie klasy planszy

This commit is contained in:
Bartłomiej Pluta
2016-05-18 12:06:40 +02:00
parent 82eb573ef8
commit 751c90b6ea
8 changed files with 136 additions and 6 deletions

1
src/board.cpp Normal file
View File

@@ -0,0 +1 @@
#include "../inc/board.hh"

View File

@@ -3,8 +3,25 @@
#include "../inc/def.hh"
#include "../inc/misc.hh"
#include "../inc/object.hh"
#include "../inc/pawn.hh"
int main()
{
sf::ContextSettings settings;
settings.antialiasingLevel = 8;
sf::RenderWindow window(sf::VideoMode(800, 600, 32), "Warcaby", sf::Style::Default, settings);
Pawn pawn(Vector(0, 0), CL_BLACK);
while(window.isOpen())
{
sf::Event event;
while(window.pollEvent(event))
{
if(event.type == sf::Event::Closed) window.close();
}
window.clear(sf::Color(255, 255, 255));
pawn.draw(window);
window.display();
}
return 0;
}

16
src/pawn.cpp Normal file
View File

@@ -0,0 +1,16 @@
#include "../inc/pawn.hh"
void Pawn::draw(sf::RenderWindow& window)
{
// Tworzymy nowy kształt koła o promieniu równym połowie długości boku kafelka i odjęciu dwóch marginesów
sf::CircleShape pawn(TILE_SIZE/2 - PAWN_MARGIN*2);
// Ustawiamy jego pozycję na pozycję zwróconą przez getPosition() uwzględniając marginesy
pawn.setPosition(getPosition().getRealVector() + sf::Vector2f(PAWN_MARGIN, PAWN_MARGIN));
// Wypełniamy odpowiednim kolorem
pawn.setFillColor((color==CL_WHITE)?sf::Color::White:sf::Color::Black);
// Rysujemy na obiekcie window
window.draw(pawn);
}