From 5dcf6a271fb2884b87a810b1afaac59923444f63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matt=C3=A9o=20Delabre?= Date: Mon, 11 Apr 2016 22:03:28 +0200 Subject: [PATCH] =?UTF-8?q?Correction=20cr=C3=A9ation=20nouveau=20niveau?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/level.hpp | 5 ----- src/level.cpp | 43 ++++++++++++++++--------------------------- src/menu.cpp | 4 +--- 3 files changed, 17 insertions(+), 35 deletions(-) diff --git a/include/level.hpp b/include/level.hpp index 6c6ae3e..78d906e 100644 --- a/include/level.hpp +++ b/include/level.hpp @@ -66,11 +66,6 @@ public: */ static sf::String getLevelName(std::string path); - /** - * Charge le niveau par défaut - */ - void load(); - /** * Charge le niveau de jeu donné depuis le fichier * dont le chemin complet absolu est en paramètre diff --git a/src/level.cpp b/src/level.cpp index 5b20d3a..12ad30e 100644 --- a/src/level.cpp +++ b/src/level.cpp @@ -149,9 +149,25 @@ Level::Level(Manager& manager) : State(manager) { sf::Vector2u window_size = getWindow().getSize(); gravity_direction = GravityDirection::SOUTH; + // positionnement par défaut de la caméra camera.setSize(window_size.x, window_size.y); camera.setCenter(0, 0); camera_angle = 180.f; + + // métadonnées par défaut + name = sf::String("Nouveau niveau"); + current_path = getResourceManager().getLevelPath("new_level.dat"); + time_left = total_time = 30; + + // zone de jeu par défaut + zone.push_back(sf::Vector2f(-128, -128)); + zone.push_back(sf::Vector2f(128, -128)); + zone.push_back(sf::Vector2f(128, 128)); + zone.push_back(sf::Vector2f(-128, 128)); + + // ressources par défaut + music = ""; + background = ""; } Level::~Level() {} @@ -167,34 +183,7 @@ sf::String Level::getLevelName(std::string path) { return name; } -void Level::load() { - // métadonnées par défaut - name = sf::String("Nouveau niveau"); - time_left = total_time = 30; - - // zone de jeu par défaut - zone.clear(); - zone.push_back(sf::Vector2f(-128, -128)); - zone.push_back(sf::Vector2f(128, -128)); - zone.push_back(sf::Vector2f(128, 128)); - zone.push_back(sf::Vector2f(-128, 128)); - - // ressources par défaut - music = ""; - background = ""; - - // objets par défaut - // TODO: ajouter quelques objets par défaut -} - void Level::load(std::string path) { - // si le fichier n'existe pas, on utilise le niveau par défaut - if (!boost::filesystem::exists(path)) { - load(); - current_path = path; - return; - } - loadLevel( path, name, total_time, zone, background, music, diff --git a/src/menu.cpp b/src/menu.cpp index ef33770..f5276e2 100644 --- a/src/menu.cpp +++ b/src/menu.cpp @@ -218,9 +218,7 @@ void Menu::launchRules() { void Menu::launchEditor(std::string path) { auto editor = std::unique_ptr(new Editor(getManager())); - if (path == "") { - editor->load(); - } else { + if (!path.empty()) { editor->load(path); }