-// $Id: worldmap.hpp 3327 2006-04-13 15:02:40Z ravu_al_hemio $
+// $Id$
//
// SuperTux
// Copyright (C) 2004 Ingo Ruhnke <grumbel@gmx.de>
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#ifndef __WORLDMAP_LEVEL_HPP__
-#define __WORLDMAP_LEVEL_HPP__
+#ifndef __LEVEL_TILE_HPP__
+#define __LEVEL_TILE_HPP__
#include <memory>
#include <string>
#include "math/vector.hpp"
#include "game_object.hpp"
#include "statistics.hpp"
+#include "video/surface.hpp"
class Sprite;
namespace WorldMapNS
{
-class Level : public GameObject
+class LevelTile : public GameObject
{
public:
- Level(const std::string& basedir, const lisp::Lisp* lisp);
- virtual ~Level();
+ LevelTile(const std::string& basedir, const lisp::Lisp* lisp);
+ virtual ~LevelTile();
virtual void draw(DrawingContext& context);
virtual void update(float elapsed_time);
-
+
Vector pos;
- std::string name;
std::string title;
bool solved;
+ bool auto_play; /**< true if Tux should automatically enter this level if it's unfinished */
std::auto_ptr<Sprite> sprite;
/** Script that is run when the level is successfully finished */
std::string extro_script;
- /** If false, disables the auto walking after finishing a level */
- bool auto_path;
+ /** return Surface of level picture or 0 if no picture is available */
+ const Surface* get_picture();
+
+private:
+ std::string basedir;
+ bool picture_cached;
+ Surface* picture;
+
};
}
#endif
-