Skip to content

Commit fc49d3c

Browse files
committed
am adaugat dynamic cast in loc sa mai poluez interfata
1 parent 0e6df15 commit fc49d3c

7 files changed

Lines changed: 11 additions & 9 deletions

File tree

code/Asteroid.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ class Asteroid : public Celestial {
2626
}
2727
}
2828

29-
bool isRakis()override{return false;}
3029
void CelestialEffects(sf::RenderWindow& window, Pair player, sf::FloatRect& viewRect) override;
3130
void isCrashed(SpaceShip& player) override;
3231
void initialize(std::mt19937 &gen, float orbitRadius) override;

code/Blackhole.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ class Blackhole : public Celestial {
1313
static const std::vector<sf::Color> possibleColors;
1414
explicit Blackhole(const Physics& physics): Celestial(physics, sf::Color::White) {
1515
}
16-
bool isRakis()override{return false;}
1716
void CelestialEffects(sf::RenderWindow& window, Pair player, sf::FloatRect& viewRect) override;
1817
void isCrashed(SpaceShip& player) override;
1918
void initialize(std::mt19937 &gen, float orbitRadius) override;

code/Celestial.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,6 @@ class Celestial {
6363
sf::CircleShape& getShape();
6464
Physics& getPhysics();
6565
friend std::ostream& operator<<(std::ostream& out,const Celestial& body);
66-
virtual bool isRakis()=0;
6766
virtual void RefuelCheck(SpaceShip &player){(void)player;}
6867
virtual void CelestialEffects(sf::RenderWindow& window, Pair player, sf::FloatRect& viewRect) = 0;
6968
virtual ~Celestial() = default;

code/GUI.cpp

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,10 +80,19 @@ void GUI::DrawMiniMap(sf::RenderWindow& window, Universe& universe, SpaceShip& p
8080
for (auto& body: system.getBodies()) {
8181
sf::CircleShape dot1(200.f);
8282
dot1.setOrigin({100.f, 100.f});
83-
if (body->isRakis())
83+
/// nu mai poluez interfata
84+
Rakis* isItRakis = dynamic_cast<Rakis*>(body);
85+
if (isItRakis != nullptr) {
8486
dot1.setFillColor(sf::Color(0XFF9900FF));
85-
else
87+
}
88+
else {
8689
dot1.setFillColor(sf::Color::White);
90+
}
91+
92+
/*if (body->isRakis())
93+
dot1.setFillColor(sf::Color(0XFF9900FF));
94+
else
95+
dot1.setFillColor(sf::Color::White);*/
8796
auto pos = body->getPhysics().getPosition();
8897
dot1.setPosition({static_cast<float>(pos.x), static_cast<float>(pos.y)});
8998
window.draw(dot1);

code/Planet.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ class Planet : public Celestial {
99
static const std::vector<sf::Color> possibleColors;
1010
explicit Planet(const Physics& physics): Celestial(physics, sf::Color::White) {
1111
}
12-
bool isRakis()override{return false;}
1312
void CelestialEffects(sf::RenderWindow& window, Pair player, sf::FloatRect& viewRect) override;
1413
void isCrashed(SpaceShip& player) override;
1514
void initialize(std::mt19937 &gen, float orbitRadius) override;

code/Rakis.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ class Rakis : public Celestial {
2727
});
2828
}
2929
}
30-
bool isRakis()override{return true;}
3130
void CelestialEffects(sf::RenderWindow& window, Pair player, sf::FloatRect& viewRect) override;
3231
void isCrashed(SpaceShip& player) override;
3332
void initialize(std::mt19937 &gen, float orbitRadius) override;

code/Star.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,6 @@ class Star : public Celestial {
1515
void isCrashed(SpaceShip& player) override;
1616
void initialize(std::mt19937 &gen, float orbitRadius) override;
1717

18-
bool isRakis()override {return false;}
19-
2018
Star* clone() const override { return new Star(*this); }
2119
};
2220

0 commit comments

Comments
 (0)