class UnitTower
{
public:
UnitTower();
~UnitTower();
sf::Sprite getSprite();
void update();
void setTarget(UnitMobile);
UnitMobile getTarget();
protected:
UnitMobile cible;
sf::Texture texture;
sf::Sprite sprite;
};
void UnitTower::update(){ Shoot shoot(this) }
class Shoot
{
public:
Shoot(UnitTower*);
~Shoot();
void fire();
protected:
sf::Texture texture;
sf::Sprite sprite;
int dommage;
UnitTower* tower;
sf::Clock clock;
};
Shoot::Shoot(UnitTower* tOwer)
{
tower = tOwer;
}
Il y a deux fois tower (en argument du constructeur et en attribut), ça ne va pas poser de problèmes ?Non, ça ne pose pas de problème.