X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Fworldmap%2Flevel.cpp;h=b60fad07c0f715ea12533ee5cb517870ed9eff35;hb=5d875d71ed6e7cff4e765eeb80e4394e16cefa3f;hp=90383ba6b82fc22e7a0c3120b9dc047627b20e4d;hpb=08813a74da6ac1fd045a105e4e8105f1d7f716f0;p=supertux.git diff --git a/src/worldmap/level.cpp b/src/worldmap/level.cpp index 90383ba6b..b60fad07c 100644 --- a/src/worldmap/level.cpp +++ b/src/worldmap/level.cpp @@ -23,28 +23,36 @@ #include "sprite/sprite_manager.hpp" #include "util/file_system.hpp" #include "util/log.hpp" +#include "util/reader.hpp" #include "video/drawing_context.hpp" #include "worldmap/level.hpp" -namespace WorldMapNS { +namespace worldmap { -LevelTile::LevelTile(const std::string& basedir, const lisp::Lisp* lisp) : +LevelTile::LevelTile(const std::string& basedir, const Reader& lisp) : + pos(), + title(), solved(false), + perfect(false), auto_play(false), + sprite(), + statistics(), + target_time(), + extro_script(), basedir(basedir), picture_cached(false), picture(0) { - lisp->get("name", name); - lisp->get("x", pos.x); - lisp->get("y", pos.y); - lisp->get("auto-play", auto_play); + lisp.get("name", name); + lisp.get("x", pos.x); + lisp.get("y", pos.y); + lisp.get("auto-play", auto_play); std::string spritefile = "images/worldmap/common/leveldot.sprite"; - lisp->get("sprite", spritefile); + lisp.get("sprite", spritefile); sprite = sprite_manager->create(spritefile); - lisp->get("extro-script", extro_script); + lisp.get("extro-script", extro_script); if (!PHYSFS_exists((basedir + name).c_str())) { @@ -70,19 +78,6 @@ LevelTile::update(float ) { } -const Surface* -LevelTile::get_picture() -{ - if (picture_cached) return picture; - picture_cached = true; - std::string fname = FileSystem::strip_extension(basedir + name)+".jpg"; - if (!PHYSFS_exists(fname.c_str())) { - return 0; - } - picture = new Surface(fname); - return picture; -} - -} +} // namespace worldmap /* EOF */