Transfert de toutes les propriétés vers le niveau de test

This commit is contained in:
Mattéo Delabre 2016-04-06 14:02:11 +02:00
parent 8016602e9d
commit 914297225b
3 changed files with 29 additions and 8 deletions

View File

@ -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
*/

View File

@ -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<ObjectPtr>& objects = getObjects();

View File

@ -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<char*>(&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<ObjectPtr>& Level::getObjects() {
return objects;
}