diff --git a/include/level.hpp b/include/level.hpp index c158c83..c6b3bc6 100644 --- a/include/level.hpp +++ b/include/level.hpp @@ -15,7 +15,7 @@ */ class Level : public View { private: - std::string name; + sf::String name; int total_time; sf::Sprite background; @@ -45,23 +45,33 @@ public: /** * Récupère le nom du niveau */ - std::string getName(); + sf::String getName() const; /** * Modifie le nom du niveau */ - void setName(std::string set_name); + void setName(sf::String set_name); /** * Récupère le temps total alloué pour terminer le niveau */ - int getTotalTime(); + int getTotalTime() const; /** * Modifie le temps total du niveau */ void setTotalTime(int set_total_time); + /** + * Récupère le fond du niveau + */ + sf::Sprite getBackground() const; + + /** + * Modifie le fond du niveau + */ + void setBackground(sf::Sprite set_background); + /** * Récupère la liste des objets */ diff --git a/src/editor.cpp b/src/editor.cpp index 77761d3..a310964 100644 --- a/src/editor.cpp +++ b/src/editor.cpp @@ -175,6 +175,7 @@ void Editor::testLevel() { // copie des propriétés game->setName(getName()); game->setTotalTime(getTotalTime()); + game->setBackground(getBackground()); // copie des objets du niveau vers le jeu std::vector& objects = getObjects(); diff --git a/src/level.cpp b/src/level.cpp index 4b5d1bb..f76cf12 100644 --- a/src/level.cpp +++ b/src/level.cpp @@ -49,7 +49,9 @@ void Level::load(std::ifstream& file) { } // lecture du nom du niveau - std::getline(file, name, '\0'); + std::string std_name; + std::getline(file, std_name, '\0'); + name = sf::String(std_name); // lecture du temps total du niveau file.read(reinterpret_cast(&total_time), sizeof(total_time)); @@ -129,15 +131,15 @@ void Level::draw() { } } -std::string Level::getName() { +sf::String Level::getName() const { return name; } -void Level::setName(std::string set_name) { +void Level::setName(sf::String set_name) { name = set_name; } -int Level::getTotalTime() { +int Level::getTotalTime() const { return total_time; } @@ -149,6 +151,14 @@ void Level::setTotalTime(int set_total_time) { total_time = set_total_time; } +sf::Sprite Level::getBackground() const { + return background; +} + +void Level::setBackground(sf::Sprite set_background) { + background = set_background; +} + std::vector& Level::getObjects() { return objects; }